SQL学习笔记Word文件下载.docx
- 文档编号:20201807
- 上传时间:2023-01-18
- 格式:DOCX
- 页数:16
- 大小:1.08MB
SQL学习笔记Word文件下载.docx
《SQL学习笔记Word文件下载.docx》由会员分享,可在线阅读,更多相关《SQL学习笔记Word文件下载.docx(16页珍藏版)》请在冰豆网上搜索。
select需要查找的字段from表名where查找条件1.SQL语句不区分大小写2.外键的语法:
表名数据类型foreginkeyreferences被指向的表名(被指向表名的指向字段)3.一个外键只能指向一个主键,并且外键与主键的数据类型要一致createdatabasehyfusehyf-表明使用某个数据库go-创建表头-createtablehhs(IDintprimarykey,-定义主键,在添加数据时主键不允许为空,不许修改,-也不许作为删除时的条件AGEINT,NAMEVARCHAR(50)-添加数据-语法:
insertinto表名values(按顺序添加,并用逗号隔开)insertintohhsvalues(110,21,AAA)insertintohhsvalues(111,22,AAA)insertintohhsvalues(112,23,AAA)insertintohhsvalues(113,24,AAA)insertintohhs(ID,age)values(115,30)-需要添加部分数据时需要在表名后面添加相应的字段-简单查询语句-语法:
selete*from表名-带条件:
select*from表名where条件select*fromhhsdroptablehhsselect*fromhhswhereage23-修改(update)-修改一个一个值updatehhssetage=age*1.5whereage23-将编号为的行age和name进行修改(对多个条件进行修改时需要用逗号隔开-语法:
update表名set修改,修改,。
where修改标识条件updatehhssetage=100,name=bbbwhereid=112-将name为null的行中年龄修改(修改条件的值为空时不可以用等于号而是用isupdatehhssetage=200wherenameisnull-删除(delect)-删除所以数-语法:
deletefrom表名;
deletefromhhs-删除指定的数据例如:
删除年龄小于并且大于或者年龄为空的人-deletefrom表名where条件deletefromhhswhere(age=22)ornameisnullSQL高级查询SQL在查询的字段里面可以使用算术表达式如selectsal*13fromempwhere条件1.使用算术表达式:
select表达式from表名where条件(可以不要条件)2.使用列的别名:
select字段as别名from表名。
3.在执行查询时可以直接使用日期进行比较,如:
1999-9-94.区间查询:
select*from表名wherebettweennumandnum或者:
select*from表名where布尔条件5.模糊查询:
like%:
表示0到多个字符_:
表示单个字符1)查询首字母为s的列:
select*fromempwherelikes%2)查询第三个字母为s的列:
select*fromempwherelike__s%6.Where条件中使用in查询语法:
select*from表名where字段in(写入要查询的内容)7.使用isnull来处理null值:
isnull(字段,0)含义是:
如果不为null则返回字段值,若为null则返回0.8.使用orderby来进行排序,默认是asc(升序排列)desc则为降序排列如;
select*from表名orderby字段1,字段2.。
9.使用别名来进行排序:
如:
select字段1,字段2,字段3别名from表名orderby别名SQL函数查询1.使用min()函数求出最小值、max()函数求取最大值selectempname,empsalfromlist$whereempsal=(selectmin(empsal)fromlist$)2.使用avg()求取平均值、max()求出总数Selectavg(字段)from表名Selectsum(字段)from表名实例:
selectempname,empsalfromlist$whereempsal(selectavg(empsal)fromlist$)其结果为显示大于平均数的所有数据3.使用count()统计数据的行数(个数)Selectcount(*)fromtableName4.使用groupby来都查询的结果进行分类统计Select统计函数(可写多个),字段(可写多个)from表名groupby字段(注意:
此字段必须在前面有声明出,并且前面所声明的字段都要在groupby后面实现)5.使用having与groupby结合对分组的结果进行筛选用法:
直接加在groupby分组字段having筛选条件小总结:
SQL多表查询1.多表查询是基于两个或两个以上表之间的查询(也叫跨表查询)2.语法:
selsct需要查询的字段from表名(多个)where匹配条件(即主键于外键的关系)selectl.empname,l.empage,d.addfromlist$l,dept$dwherel.deptnum=d.deptnumorderbyd.deptSQL子查询1.SQL子查询是嵌入到其他select语句中的查询(也叫嵌套查询)SQL子查询分单行子查询和多行子查询,单行自查询使用“where=”而多行子查询使用”wherein”SQL多表查询MSSQL数据库的备份还原使用命令行来备份数据库和回复数据库:
backupdatabase需要备份的数据库名todisk=备份路径注:
备份路径使用/或restoredatabase需要恢复的数据库名todisk=备份数据库路径数据库的约束Java对数据库的操作:
JAVA对数据库的操作:
JDBC-ODBCimportjava.sql.*;
publicclassOdbc2publicstaticvoidmain(Stringargs)Connectionct=null;
PreparedStatementps=null;
ResultSetrs=null;
try/加载驱动Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);
/得到数据库链接ct=DriverManager.getConnection(jdbc:
odbc:
myjdbc,sa,sa);
/操作数据库ps=ct.prepareStatement(select*fromdept$wheredept=?
);
/PreparedStatement查询的时候使用问号查询ps.setString(1,ww1);
rs=ps.executeQuery();
while(rs.next()Stringdeptnum=rs.getString
(1);
Stringdept=rs.getString
(2);
Stringadd=rs.getString(3);
System.out.println(deptnum+dept+add+);
catch(Exceptione)e.printStackTrace();
finallytryif(rs!
=null)/先创建后关闭、后创建先关闭rs.close();
if(ps!
=null)ps.close();
if(ct!
=null)ct.close();
catch(Exceptione2)/TODO:
handleexceptione2.printStackTrace();
JAVA操作数据库:
操作数据库:
JDBC(此操作无需配置此操作无需配置ODBC数据源数据源,可直接连接数可直接连接数据库并操作数据库据库并操作数据库)需要引入连接数据库需要引入连接数据库jar包包executeQuery:
查询查询executeUpdate:
增删改:
增删改在取出数据时,若使用*号查找,则需要按原来数据库的编号取出,若用自己写入查找字段则按输入字段编号;
packageodbc;
importjava.sql.*;
publicclassJdbcpublicstaticvoidmain(Stringargs)/TODOAuto-generatedmethodstubConnectionct=null;
try/加载驱动Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver);
microsoft:
sqlserver:
/127.0.0.1:
1433;
databaseName=myjdbc,sa,sa);
/操作数据库ps=ct.prepareStatement(select*fromdept$);
=null)rs.close();
handleexception使用使用java创建数据库、数据表、备份、还原。
(创建数据库、数据表、备份、还原。
(execute)importjava.sql.*;
publicclassTeststaticStringurl=com.microsoft.jdbc.sqlserver.SQLServerDriver;
staticStringurl2=jdbc:
databaseName=mytest;
publicstaticvoidmain(Stringargs)/TODOAuto-generatedmethodstubConnectionct=null;
tryClass.forName(url);
ct=DriverManager.getConnection(url2,sa,sa);
/创建数据库/若执行的是ddl语句,则使用的是execute();
并且其为一个布尔值;
ps=ct.prepareStatement(createdatabasenames);
ps.execute();
/创建表ps=ct.prepareStatement(createtableppse);
/删除数据库ps=ct.prepareStatement(deletefromnames);
/备份数据库ps=ct.prepareStatement(backupdatabasenamestodisk=f:
/);
/恢复数据库ps=ct.prepareStatement(restoredatabasenamestodisk=f:
catch(Exceptione)/TODO:
handleexceptione.printStackTrace();
finallytryif(ps!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL 学习 笔记