首页 > 代码库 > SQL语句

SQL语句

错误:

Column count doesn‘t match value count at row 1

               列计数与第1行的值计数不匹配

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server

version for the right syntax to use near ‘DATABASE‘ at line 1

         您的SQL语法中有错误; 请检查与MySQL服务器版本对应的手册,以获取在第1行“DATABASE”附近使用的正确语法

 

1、 MySQL下创建一个数据库student,字符集使用utf8

       CREATE DATABASE student character set utf8;//创建表时设置字符集

2、 创建三个表

(1) 学生表,字段如下:学号,姓名,性别,出生日期,省份,班级,各字段使用合适的数据类型,设置学号为主键

create table 学生表(

    学号 INT NOT NULL PRIMARY KEY,   //设置主键

     姓名 VARCHAR(20) NOT NULL ,

     性别 VARCHAR(2) ,

     出生日期 DATE ,

     省份 VARCHAR(20),

 班级 VARCHAR(15)

);

(2) 课程表,字段如下:课程号,课程名称,任课教师,学时,学分,课程性质(选修,必修),备注,各字段使用合适的数据类型,设置课程号为主键

create table 课程(

     课程 INT NOT NULL PRIMARY KEY,

     课程名称 VARCHAR(30) NOT NULL ,

     任课老师 VARCHAR(10) ,

     学时 INT  ,

     学分 INT ,

 课程性质 VARCHAR(15)

);

 

(3) 成绩表:字段如下:学号,课程号,成绩,设置学号,课程号为外部主键

create table 成绩(

      INT NOT NULL  ,

     课程号 INT  NOT NULL  ,

     成绩 INT ,

     foreign key ( 学号 )  references  学生表( 学号 ),     //设置外键

     foreign key (课程号 )  references 课程表(课程号 )   //设置外键

);

 

3、 使用SQL语句在三个表中分别增加若干数据

 //插入数据,INT类型数据直接写,VARCHAR字符串类型数据要用单引号,DATE日期类型数据也要用单引号

insert into 学生表 ( 学号, 姓名, 性别, 出生日期, 省份, 班级) values (1404240520 ,‘小浩‘, ‘‘ , ‘2008-08-15‘ ,‘湖北省‘,‘11405‘);

 

4、 使用相应的SQL语句实现以下操作

(1) 查询所有学生的学号,姓名,出生日期信息

           select 学号,姓名,出生日期  from 学生表;    //查询语句select与from之间可以有多个字段,用逗号隔开,代表要输出的字段

 

(3) 查询省份是“湖北”,姓“李”的女同学的学号,班级,出生日期

 

         select 学号, 班级, 出生日期 from 学生表 where 省份=‘湖北省‘ and 姓名 like ‘%‘ and 性别=‘‘;

(4) 统计男,女同学的人数

         select 性别,count(*) from 学生表 where 性别=‘‘ group by 性别;   //count(*)表中本来是没有的,新创建的字段来记录个数

 

         select 性别,count(*) from 学生表 where 性别=‘‘ group by 性别;

 

 

 

查询命令语句http://bbs.csdn.net/topics/390407669

外键 http://blog.sina.com.cn/s/blog_53729e4601011wja.html

SQL语句