SQL语句:
SQL语句用于维护管理数据库,包括数据查询、数据更新、访问控制、对象管理等功能。
SQL语言分类:
a)创建新的数据库:
CREATE DATABASE 数据库名;
b)创建新的表:
CREATE TABLE 表名 (字段1 数据类型,字段2 数据类型[,...][,PRIMARY KEY (主键名)]);
#主键一般选择能代表唯一性的字段不允许取空值(NULL),一个表只能有一个主键。
例:create database sanguo; use sanguo; create table CLASS1 (id int not null,name char(10) not null,sex char(1),primary key (id));
c)删除指定数据表:
DROP TABLE [数据库名.]表名; #如不用USE进入库中,则需加上数据库名
d)删除指定的数据库:
DROP DATABASE 数据库名; 例:show databases; drop table SANGUO.chibi; use SANGUO; show tables; drop database SANGUO; show databases;
管理表中的数据记录
a)向数据表中插入新的数据记录:
INSERT INTO 表名(字段1,字段2[,...]) VALUES(字段1的值,字段2的值,...); 例:create database sanguo; use sanguo; create table chibi (id int not null,name char(20) not null,sex char(1) not null,primary key (id)); insert into chibi (id,name,sex) values(1,'zhangsan','男');
b)查询数据记录:
SELECT 字段名1,字段名2[,...] FROM 表名 [WHERE 条件表达式]; 例:select * from CLASS2; select name,sex from CLASS2 where id=1;
c)修改、更新数据表中的数据记录:
UPDATE 表名 SET 字段名1=字段值1[,字段名2=字段值2] [WHERE 条件表达式]; 例:insert into CLASS2 (id,name,sex) values(2,'lisi','女'); insert into CLASS2 (id,name,sex) values(3,'wangwu','男'); select * from CLASS2; update CLASS2 set id=4 where name='zhangsan'; select * from CLASS2; update CLASS2 set name='sicong',sex='男' where id=2; select * from CLASS2;
d)在数据表中删除指定的数据记录:
DELETE FROM 表名 [WHERE 条件表达式]; 例:delete from CLASS2 where id=4; select * from CLASS2;
修改表名和表结构
a)修改表名:
ALTER TABLE 旧表名 RENAME 新表名; 例:alter table CLASS2 rename CLASS3; show tables; select * from CLASS3;
b)扩展表结构(增加字段):
ALTER TABLE 表名 ADD address varchar(50) default '地址不详';
#default ‘地址不详’:表示此字段设置默认值 地址不详;可与 NOT NULL 配合使用
例:alter table CLASS3 add address varchar(50) default '地址不详';
c)修改字段(列)名,添加唯一键:
ALTER TABLE 表名 CHANGE 旧列名 新列名 数据类型 [unique key]; 例:alter table CLASS3 change name student_name varchar(20) unique key; select * from CLASS3; insert into CLASS3 (id,student_name,sex) values (1,'zhangsan','男'); select * from chibi; insert into chibi (id,student_name,sex) values (4,'zhangsan','男');