欢迎投稿

今日深度:

MySQL创建高级联结,mysql联结

MySQL创建高级联结,mysql联结


SQL允许给表取别名,这样做的两个主要理由是:

  • 缩短SQL语句;
  • 允许在单条SELECT语句中多次使用同一个表;
与之前相对应的我们使用别名来表示一个表:


自联结

问题:假如知道某一厂商生产的一个产品 ID 为 DTNTR有问题,需要从数据库中查找出该厂商生产的其他所有产品。

下面的SELECT语句可以将该vend_id所生产的所有产品查找出来:



现在来看使用联结的相同查询:





Mysql创建外键连接

建立外键需要注意几点:
1,必须使用innodb表引擎
2,两个表的字符编码必须一致
3,被引用的typeid,即父表中的typeid必须是主键或者唯一建

满足以上几点,sql如下:
--------------------------------
create table father (typeid int primary key,name varchar(10)) engine=innodb;

create table son (id int,typeid int ,foreign key (typeid) references father(typeid)) engine=innodb;

如果你的意思只是说两个表做关联,你的sql可以这么写
select * from father ,son where son.typeid=father.typeid
 

怎建立MYSQL数据库的连接?

在安装好MYSQL ODBD 的驱动程序后,应如何建立ASP 文件连接数据库? 我们有两种方法: 一种是在ODBC 数据源中建立一个DSN。具体方法是: 1、打开控制面板中的ODBD 数据源; 2、选择系统DSN,添加一个新的DSN 驱动程序; 3、选择MyODBD,出现一个对话框供输入MySQL: (1)Windows DSN name:所要建立DSN 的名称; (2)MySQL Host (name or ip):MySQL 服务器的名称或IP 地址。一般填LocalHost ; (3) MySQL database name:需要使用数据库的名称。 4、在 MySQL 管理程序中建立数据库。以数据库 chunfeng 为例,内有 user 数据表,两个字段分别是:username 和password,我们可以试着加入几个记录: (1)user:连接数据库的用户名。可填root 超级用户; (2)password:连接数据库用户口令。可不填; (3)Port(if not 3306):MySQL 在服务器的端口。填默认为3306; (4)SQL command on connect:使用SQL 命令连接数据库。可不填。 全部填完后按OK 保存。 好了,我们来连接数据库,ASP 代码如下: <% strConnection = "dsn=chunfeng;driver={myodbd driver};server=localhost;uid=root;pwd=; database=chunfeng" Set adoDataConn = Server.CreateObject("ADODB.Connection") adoDataConn.Open strConnection strQuery = "SELECT * FROM user" Set rs = adoDataConn.Execute(strQuery) If Not rs.BOF Then %>
 

www.htsjk.Com true http://www.htsjk.com/shujukunews/2292.html NewsArticle MySQL创建高级联结,mysql联结 SQL允许给表取别名,这样做的两个主要理由是: 缩短SQL语句; 允许在单条SELECT语句中多次使用同一个表; 与之前相对应的我们使用别名来表示一个表: 自...
相关文章
    暂无相关文章
评论暂时关闭