SQL简单点说,就是访问和处理关系性数据库的一种计算机语言,而要操作数据库中的表,首要就是要创建数据表
目录
1、创建数据表
建表
写数据
2、修改表名
3、添加索引
1、创建数据表
建表
-- 创建演员表
CREATE TABLE IF NOT EXISTS `actor` (
`actor_id` smallint (5) NOT NULL PRIMARY KEY COMMENT '演员ID',
`first_name` varchar (45) NOT NULL COMMENT '名',
`last_name` varchar(45) NOT NULL COMMENT '姓',
`last_update` datetime NOT NULL COMMENT '最近一次更新时间'
);
通过CREATE TABLE table_name(字段形式)语句来创建数据表,加上IF NOT EXISTS就是在创建时是查看否存在相同表名actor。其中:
-
smallint、varchar、datetime为字段数据类型;
-
括号后的数字为字段长度,例如actor_id为小整型,长度为5;
-
PRIMARY KEY 表actor_id字段为主键,也可在last_update字段后面加 PRIMARY KEY (`actor_id`)表主键;
-
COMMENT后接字段的注释。
注:
1、可用CREATE DATABASE 库名 语句来创建数据库名
-- 创建测试数据库
CREATE DATABASE test;
-- 查看存在的数据库
SHOW DATABASE;
-- 使用测试数据库
USE test;
-- 查看存在的数据表
SHOW TABLES;
2、查看表结构的详细信息
-- show create table tablename
show create table actor;
-- desc/describe table_name
desc actor;
写数据
-- 写入数据
INSERT INTO `actor`(`actor_id`, `first_name`, `last_name`, `last_update`)
VALUES
(1, 'PENELOPE', 'GUINESS', '2006-02-15 12:34:33'),
(2, 'NICK', 'WAHLBERG', '2006-02-15 12:34:33');
通过INSERT INTO table_name(列名) VALUES(值) 语句来往actor表中写数据,actor后接字段名,values后接要插入的数据,插入多行数据用逗号分隔。
注:
1、也可使用旧表创建新表
CREATE TABLE actor_new like actor;
CREATE TABLE actor_new AS SELECT * FROM actor;
2、写入数据也可以从一张表中查询数据并插入到另一张表中
INSERT INTO table1(id,name) select id,name from table2
2、修改表名
RENAME TABLE这个SQL语句来修改表名的基本语法是:RENAME TABLE <旧表名> TO <新表名>;
rename table actor to actor_new1;
ALTER TABLE这个SQL语句来修改表名的基本语法是:ALTER TABLE <旧表名> RENAME TO<新表名>;
alter table actor rename to actor_new2;
3、添加索引
ALTER TABLE `table_name` ADD PRIMARY KEY (`column`)
ALTER TABLE `table_name` ADD UNIQUE (`column`)
ALTER TABLE `table_name` ADD INDEX index_name (`column`)
ALTER TABLE `table_name` ADD FULLTEXT (`column`)
ALTER TABLE `table_name` ADD INDEX index_name (`column1`, `column2`, `column3`)
外键用于与另一张表进行关联。是能确定另一张表记录的字段,用于保持数据的一致性。比如,A表中的一个字段,是B表的主键,那他就可以是A表的外键。
1、sql语句创建表的同时添加外键约束
DROP TABLE IF EXISTS audit; (若表存在,删除存在的表)
CREATE TABLE audit(
EMP_no INT NOT NULL,
create_date datetime NOT NULL,
FOREIGN KEY(EMP_no) REFERENCES employees_test(ID));
(给从表audit添加外键参考主表employees_test的字段ID)
2、添加外键约束(关联字段要用括号括起来)
ALTER TABLE 从表 ADD CONSTRAINT 约束名 FOREIGN KEY (关联字段) references 主表(关联字段);