上午

TSQL语句

1.创建数据库

create database test2;

2.删除数据库

drop database test2;

3.创建表

create table ceshi

(

ids int auto_increment primary key,

uid varchar(20),

name varchar(20),

class varchar(20),

foreign key (class)  references class(code)

);

create table class

(

code varchar(20) primary key,

name varchar(20) not null

);

**自增长 auto_increment

**主键 primary key

**外键 foreign key (列名)  references 主表名(列名)

**非空 not null

4.删除表

drop table ceshi;

注意:

1.类型包含长度的在类型后面加括号,括号里面写长度

2.上一列写完加逗号

3.最后一列不要写逗号

4.在每一条SQL语句写完之后要加分号

5.如果有外键关系,先创建主表

创建表:

create table class

(

code varchar(20) primary key,

name varchar(20)

);

create table student

(

code varchar(20) primary key,

name varchar(20),

sex bit,

age int,

class varchar(20),

foreign key (class) references class(code)

);

create table kecheng

(

code varchar(20) primary key,

name varchar(20)

);

create table teacher

(

code varchar(20) primary key,

name varchar(20)

);

create table chengji

(

ids int auto_increment primary key,

scode varchar(20),

kcode varchar(20),

degree float,

foreign key (scode) references student(code),

foreign key (kcode) references kecheng(code)

);

create table tkecheng

(

ids int auto_increment primary key,

tcode varchar(20),

kcode varchar(20),

foreign key (kcode) references kecheng(code),

foreign key (tcode) references teacher(code)

);

听课笔记:

  1. 主表不能随便删除,先删除从表再删除主表
  2. 如果连续重复运行两遍就会出现

[Err] 1050 - Table 'class' already exists

这是因为添加了重复列,保存后查看表是否有问题即可

下午:

CRUD

1.注释语法:--,#

2.后缀是.sql的文件是数据库查询文件

3.保存查询时保存的是代码(TSQL语句),查询执行成功后,表已经建立

4.在数据库里面 列有个名字叫字段   行有个名字叫记录

CRUD操作:

create 创建(添加)

read 读取

update 修改

delete 删除

1、添加数据

insert into Info values('p009','张三',1,'n001','2016-8-30 12:9:8') ;

给特定的列添加数据

insert into Info (code,name) values('p010','李四');

自增长列的处理

insert into family values('','p001','数据','T001','数据',1);

insert into 表名 values(值)

2、删除数据

删除所有数据

delete from family

删除特定的数据

delete from Info where code='p001'

delete from 表名 where 条件

3、修改数据

修改所有数据

update Info set name='徐业鹏'

修改特定数据

update Info set name='吕永乐' where code='p002'

修改多列

update Info set name='吕永乐',sex=1 where code='p003'

update 表名 set 要修改的内容 where 条件

4、读取数据

(1)简单读取,查询所有列(*)  所有行(没有加条件)

select * from Info

(2)读取特定列

select code,name from Info

(3)条件查询

select * from Info where code='p003'

(4)多条件查询

select * from Info where code='p003' or nation='n002' #或的关系

select * from Info where sex=0 and nation='n002' #与的关系

(5)关键字查询(模糊查询)

查所有包含奥迪的汽车

select * from car where name like '%奥迪%'; #百分号%代表任意多个字符

查以'皇冠'开头的所有汽车

select * from car where name like '皇冠%';

查询汽车名称中第二个字符是'马'的

select * from car where name like '_马%'; #下划线_代表任意一个字符

(6)排序查询

select * from car order by powers  #默认升序排列

select * from car order by powers desc #升序asc 降序 desc

先按brand升序排,再按照price降序排

select * from car order by brand,price desc

听课笔记:

  1. 重复运行后可能出现错误,因为重复运行执行代码后的      表可能已经不是原来在表

课外补充:

MySQL 添加列,修改列,删除列

  ALTER TABLE:添加,修改,删除表的列,约束等表的定义。

  查看列:desc 表名;

  修改表名:alter table t_book rename to bbb;

  添加列:alter table 表名 add column 列名 varchar(30);

  删除列:alter table 表名 drop column 列名;

  修改列名MySQL: alter table bbb change nnnnn(原来列名) hh(修改后列名) int(类型);

修改列名SQLServer:exec sp_rename't_student.name','nn','column';

  修改列名Oracle:lter table bbb rename column nnnnn to hh int;

  修改列属性:alter table t_book modify name varchar(22);

  sp_rename:SQLServer 内置的存储过程,用与修改表的定义。

  mysql修改、删除数据记录

  mysql数据库相信很多人都接触过,在进行mysql数据库的操作的时候,有人就希望删除或者修改mysql数据库中的一些数据记录。

  mysql数据库相信很多人都接触过,在进行mysql数据库的操作的时候,有人就希望删除或者修改mysql数据库中的一些数据记录。DELETE 和UPDATE 语句令我们能做到这一点。

  用update修改记录

  UPDATE tbl_name SET 要更改的列

  WHERE 要更新的记录

  这里的 WHERE 子句是可选的,因此如果不指定的话,表中的每个记录都被更新。

  例如,在pet表中,我们发现宠物Whistler的性别没有指定,因此我们可以这样修改这个记录:

  mysql> update pet set sex=’f’ where name=” Whistler”;

  用delete删除记录

  DELETE 语句有如下格式:

  DELETE FROM tbl_name WHERE 要删除的记录

  WHERE 子句指定哪些记录应该删除。它是可选的,但是如果不选的话,将会删除所有的记录。这意味 着最简单的 DELETE 语句也是最危险的。

  这个查询将清除表中的所有内容。一定要当心!

  为了删除特定的记录,可用 WHERE 子句来选择所要删除的记录。这类似于 SELECT 语句中的 WHERE 子句。

  mysql> delete from pet where name=”Whistler”;

  可以用下面的语句清空整个表:

  mysql>delete from pet;

作业:

create table class

(

code varchar(20) primary key,

name varchar(20) not null

);

create table ceshi

(

ids int auto_increment primary key,

uid varchar(20),

class varchar(20),

foreign key(class) references class(code)

);

测试 列 的修改

#alter table ceshi add column name varchar(20);

#alter table ceshi drop column uid;

alter table ceshi change name sex bit;

TSQL语句和CRUD(20161016)的更多相关文章

  1. 数据库基础及T-SQL语句

    字符类型: int 整型float 小数double 小数varchar(20) 字符串bit 布尔型数据datetime 日期时间类型text 长文本 (以下两种不经常使用) money 存货币im ...

  2. 数据库---T-SQL语句提纲

    T-SQL语句: 创建表:create table Name(Code varchar(50)) 主键:primary key自增长列:auto_increment外键关系:references非空: ...

  3. 3.11 T-SQL语句

    T-SQL语句 1.创建表create table Car     --创建一个名字是Car的表-- ( Code varchar(50) primary key, --第一列名字是Code 数据类型 ...

  4. 数据库---T-SQL语句(一)

    一.T-SQL语句 1.创建表:create table Name(Code varchar(50),) 主键:primary key 自增长:auto_increment 外键关系:referenc ...

  5. T-SQL语句简易入门(第一课)

    在微软官方,有一篇介绍T-SQL语句的教程,非常好理解,完全可以帮助新手入门,了解常用SQL语句的使用语法,而且又不涉及较为复杂的操作.不用安装示例数据库AdventureWorks.下面是教程里内容 ...

  6. 答:SQLServer DBA 三十问之六:Job信息我们可以通过哪些表获取;系统正在运行的语句可以通过哪些视图获取;如何获取某个T-SQL语句的IO、Time等信息;

    6. Job信息我们可以通过哪些表获取:系统正在运行的语句可以通过哪些视图获取:如何获取某个T-SQL语句的IO.Time等信息: 我的MSDB数据库中有全部的表: sys.all_columns,s ...

  7. 部分具有统计功能的TSQL语句(例如DBCC语句,全局函数,系统存储过程)

    部分具有统计功能的TSQL语句(例如DBCC语句,全局函数,系统存储过程) 这些功能也能帮助用户了解和监控SQLSERVER的运行情况 DBCC语句,DBCC语句是SQL2005的数据库控制台命令 D ...

  8. T-sql语句中GO的作用及语法【转】

    1. 作用: 向 SQL Server 实用工具发出一批 Transact-SQL 语句结束的信号.2. 语法:一批 Transact-SQL 语句GO如Select 1Select 2Select ...

  9. MS SQL Server 如何得到执行最耗时的前N条T-SQL语句-

    --得到最耗时的前N条T-SQL语句 --适用于SQL SERVER 2005及其以上版本 --给N赋初值为30 ;with maco as ( select top (@n) plan_handle ...

随机推荐

  1. easyUI progressbar组件

    easyUI progressbar组件: <!DOCTYPE html> <html lang="en"> <head> <meta c ...

  2. Canvas createLinearGradient API

    createLinearGradient addColorStop <!DOCTYPE html> <html lang="en"> <head> ...

  3. java 调用webservice的各种方法总结,wsimport方法总结

    http://www.blogjava.net/zjhiphop/archive/2009/04/29/webservice.html wsimport生成webservice客户端: wsimpor ...

  4. Qt Quick编程(1)——QML的核心部分ECMAScript

    说道QML,不得不先说一下ECMAScript: ECMAScript语言的标准是由Netscape.Sun.微软.Borland等公司基于JavaScript和JScript锤炼.定义出来的. EC ...

  5. SuperSocket入门(五)-常用协议实现模版及FixedSizeReceiveFilter示例

             Socket里面的协议解析是Socket通讯程序设计中最复杂的地方,如果你的应用层协议设计或实现不佳,Socket通讯中常见的粘包,分包就难以避免.SuperSocket内置了命令行 ...

  6. MyEclipse - 解决 MyEclipse build workspace慢,validation javascript更慢的问题

    在这个过程中对.projet文件进行了跟踪比对,总算发现这个Build的时候进行Validation是从哪里定义的了.似乎因为我的项目是基于ExtJS2.0.2的web project,所以会提示打开 ...

  7. css3 3d 与案例分析

    作者:魔洁 聊到3d那我们就先聊聊空间维度,首先一维,比如一条线就是一个一维空间,连点成线在这个空间里这些点只能前进后退,二维空间就是一个平面,这时点不仅可以前进后退还可以左右移动,3维空间也可以说是 ...

  8. Android仿微信朋友圈,全文收起功能,附源码

    在众多的社交类软件中,朋友圈是必不可少的,可以与好友.同学等分享自己的日常和有意思的事情,在开发社交类App时,朋友圈发表的内容你不可能让他全部显示,全部显示的话用户体验度会非常不好,这时就要用到全文 ...

  9. 【死磕Java并发】-----Java内存模型之happend-before

    在上篇博客([死磕Java并发]-–深入分析volatile的实现原理)LZ提到过由于存在线程本地内存和主内存的原因,再加上重排序,会导致多线程环境下存在可见性的问题.那么我们正确使用同步.锁的情况下 ...

  10. 关于下载SAE日志签名认证的方法——PHP版

    之前需要下载SAE上的日志存入数据库,因此研究了下SAE的签名认证和日志下载.这个链接是SAE官方给出的API文档.https://www.sinacloud.com/doc/api.html#qia ...