上午

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. doubango(2)--底层协议栈结构分析

    tsip_stack_handle_t 实例 1.        tsip_stack_handle_t的创建 在底层,真正运转的协议栈结构式tsip_stack_handle_t的一个实例,它的创建 ...

  2. MalformedObjectNameException: Invalid character '' in value part of property

    http://blog.csdn.net/getdate/article/details/6729706 ojdbc6.jar的问题: 最近在项目中用spring配置oracle数据库连接池, 启动的 ...

  3. python enhanced generator - coroutine

    本文主要介绍python中Enhanced generator即coroutine相关内容,包括基本语法.使用场景.注意事项,以及与其他语言协程实现的异同. enhanced generator 在上 ...

  4. Javascript/js的相等和不等运算符(= 、== 、===)

    "=="和"==="运算符用于比较两个值是否相等,当然它们对相等的定义不尽相同.两个运算符允许任意类型的操作数,如果操作数相等则返回tru,否则返回false. ...

  5. java虚拟机启动参数整理

    java启动参数 共分为三类其一是标准参数(-),所有的JVM实现都必须实现这些参数的功能,而且向后兼容:其二是非标准参数(-X),默认jvm实现这些参数的功能,但是并不保证所有jvm实现都满足,且不 ...

  6. [html5] 学习笔记- 编辑API之Range对象(二)

    本节继续介绍range对象的方法,包括cloneRange,cloneContents,extraContents,createContextual,createContextual-Fragment ...

  7. 技巧收集-W1701

    2017.02 For Flask, to use the decorator, apply it as innermost decorator to a view function. When ap ...

  8. SQL CRUD 简单查询

    identity 自增长 primary key 主键 unique 唯一键 not null 非空 references 外键(引用) 1.删除表 drop table Student 2.修改表 ...

  9. nginx配合IIS实现简单负载均衡

    1.IIS 部署两个站点端口分别为8081和8082 8081站点和8082站点如下[随便写了个没有样式的很丑的页面],我特意加了111和222区分     2.设置nginx配置文件,实现简单的负载 ...

  10. HashSet、LinkedHashSet、TreeSet使用区别

    HashSet:哈希表是通过使用称为散列法的机制来存储信息的,元素并没有以某种特定顺序来存放: LinkedHashSet:以元素插入的顺序来维护集合的链接表,允许以插入的顺序在集合中迭代: Tree ...