热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

毕业设计记录(三)mysql的SQL语句_MySQL-mysql教程

毕业设计记录(三)mysql的SQL语句
由于时间问题,没有时间找到所有的sql语句,不会了及时从网上找。下面我把自己遇到的问题总结一下:

首先告诉大家,尤其是不习惯dos界面的用户,有用户界面可供选择,我用的是navicat,给大家截个图:

高兴了吧?新建个链接的名字就行了,再建个数据库就好使了,都是鼠标操作。但是有人疑问要是部署到服务器咋整?很简单,你就把这个数据库备份,在服务器安装一个一样版本的的界面和数据库,然后用sql语句备份就行了。但是,出于程序员的考虑,还是写sql比较好。大家可以看到我截图的这个界面有个新建查询,大家点击后别忘保存。这里我想多说一件事。

当时,我新建链接用的默认名,之后也是写的sql语句,也保存了,但是不知道保存在哪里。于是我就测试,关闭之后重新打开,还不错,查询还在。但是后来觉得链接名字很难看,就删了。再次打开后,查询不在了,自然也就没有那些语句了。原来查询针对的是链接。

其实我早该想到,因为又一次打开了没用过的数据库,结果没注意,怎么都找不到查询,后来打开自己用的数据库才找到了。不过,最好还是多备份几个,比如word里了,还有项目根目录下了等等。

DROP TABLE person;
CREATE TABLE person(
pid INT PRIMARY KEY AUTO_INCREMENT,
pno VARCHAR(20) UNIQUE,
ppassword VARCHAR(20),
pname VARCHAR(20),
pemail VARCHAR(20),
preminder SMALLINT DEFAULT 0,
ppower SMALLINT DEFAULT 1

);
INSERT INTO person VALUES(1,'20104516','12345','吴俊朋','1329113268@qq.com','1',3);
INSERT INTO person (pno,ppassword,pname) VALUES (20104528,'12345','强');
Update person Set pname='wujunpeng' where pno='20104516';
-- 从第六个开始,往后数三个
SELECT * FROM person LIMIT 5,3;
-- 前五个
SELECT * FROM person LIMIT 5;
-- 先排序,从第五个,数三个
SELECT * FROM (SELECT * FROM person p ORDER BY pno) pr LIMIT 4,3;
-- 得到行数
SELECT COUNT(*) FROM person ;

以上语句大家可以亲自测试,观看结果,这些语句都是可以使用的。

其中还有个大文本类型:LONG,限制最大多大我不记得了,总之可以用;还有日期类型:TIMESTAMP DEFAULT CURRENT_TIMESTAMP,默认填入dang当前时间。说这句话大家估计都知道,personbiao中pid那一行属性:整形,主键自动增长; 第二行属性:字符型,唯一; 最后一行属性:默认为1; CURRENT_DATE()也可当做一个属性。

下面把所有sql语句全部粘贴出来。

-- 节表
DROP TABLE chater;
CREATE TABLE chater(
cid INT PRIMARY KEY AUTO_INCREMENT,
cno INT NOT NULL,
cname VARCHAR(20)
);
INSERT INTO chater VALUES(5,1,'陈傻子');
INSERT INTO chater (cno,cname) VALUES (3,'吴俊朋');
SELECT * FROM chater;
-- 节表
DROP TABLE point;
CREATE TABLE point(
poid INT PRIMARY KEY AUTO_INCREMENT,
pono INT NOT NULL,
poname VARCHAR(20),
cno INT
);
INSERT INTO point VALUES(5,1,'陈傻子',5);
SELECT * FROM point;
-- 试题表
DROP TABLE exam;
CREATE TABLE exam(
eid INT PRIMARY KEY AUTO_INCREMENT,
econtent VARCHAR(254) NOT NULL,
ea VARCHAR(100),
eb VARCHAR(100),
ec VARCHAR(100),
ed VARCHAR(100),
eanswer VARCHAR(2),
eansexplain VARCHAR(254),
kid INT
);
INSERT INTO exam VALUES(5,'谁傻','陈','曾','张','吴','a','傻',3);
INSERT INTO exam (econtent,ea,eb,ec,ed,eanswer,eansexplain,kid) VALUES ('谁傻','陈','曾','张','吴','a','傻',3);
SELECT * FROM exam;
-- 知识点表
DROP TABLE know;
CREATE TABLE know(
kid INT PRIMARY KEY AUTO_INCREMENT,
cno INT,
kname VARCHAR(20),
kcontent LONGTEXT,
krecomment VARCHAR(254),
kother VARCHAR(100),
kvideo VARCHAR(100),
kpre VARCHAR(100),
knext VARCHAR(100)

);
INSERT INTO know VALUES(5,3,'谁傻','陈','曾','张','吴','a','傻');
INSERT INTO know (cno,kname,kcontent,krecomment,kother,kvideo,kpre,knext) VALUES (3,'谁傻','陈','曾','张','吴','a','傻');
SELECT * FROM know;
-- 人员表
DROP TABLE person;
CREATE TABLE person(
pid INT PRIMARY KEY AUTO_INCREMENT,
pno VARCHAR(20) UNIQUE,
ppassword VARCHAR(20),
pname VARCHAR(20),
pemail VARCHAR(20),
preminder SMALLINT DEFAULT 0,
ppower SMALLINT DEFAULT 1

);
INSERT INTO person VALUES(1,'20104516','12345','吴俊朋','1329113268@qq.com','1',3);
INSERT INTO person (pno,ppassword,pname) VALUES (20104528,'123','强');
SELECT * FROM person;
SELECT * FROM person WHERE pno='20104516' and ppassword='12345;
Update person Set pname='wujunpeng' where pno='20104516';
-- 从第六个开始,往后数三个
SELECT * FROM person LIMIT 5,3;
-- 前五个
SELECT * FROM person LIMIT 5;
-- 先排序,从第五个,数三个
SELECT * FROM (SELECT * FROM person p ORDER BY pno) pr LIMIT 4,3;
SELECT * FROM (SELECT * FROM person p where ppower=1 ORDER BY pno ) pr LIMIT 0,5
-- 得到行数
SELECT COUNT(*) FROM person ;
-- 问题表
DROP TABLE quest;
CREATE TABLE quest(
qid INT PRIMARY KEY AUTO_INCREMENT,
qtop INT DEFAULT 0,
cno INT,
qname VARCHAR(20),
qcontent VARCHAR(254),
qperson VARCHAR(20),
qtime TIMESTAMP DEFAULT CURRENT_TIMESTAMP

);
INSERT INTO quest VALUES(5,0,3,'傻','陈盛力撒','吴俊朋','2014-04-17 12:11:12');
INSERT INTO quest (cno,qname,qcontent,qperson) VALUES(3,'傻','陈盛力撒','吴俊朋');
SELECT * FROM quest;
-- 分数表
DROP TABLE score;
CREATE TABLE score(
sid INT PRIMARY KEY AUTO_INCREMENT,
pno INT,
kid INT,
score SMALLINT
);
INSERT INTO score VALUES(5,20104516,3,90);
INSERT INTO score (pno,kid,score) VALUES(20104528,'923',100);
SELECT * FROM score;
-- 动态表
DROP TABLE dynamic;
CREATE TABLE dynamic(
did INT PRIMARY KEY AUTO_INCREMENT,
dtitle VARCHAR(100),
dcontent LONGTEXT,
durl VARCHAR(100),
dresource VARCHAR(100)
);
INSERT INTO dynamic VALUES(5,'陈盛力','喜欢hy','h','sfdsfs');
INSERT INTO dynamic (dtitle,dcontent,durl,dresource) VALUES('陈盛力','喜欢hy','http://www.baidu.com','sfdsfs');
SELECT * FROM dynamic;
SELECT * FROM (SELECT did,dtitle,dresource FROM dynamic d ORDER BY did ) dd LIMIT 0,2;
-- 作业表
DROP TABLE task;
CREATE TABLE task(
tid INT PRIMARY KEY AUTO_INCREMENT,
tname VARCHAR(100),
task LONGTEXT,
tdeadline VARCHAR(100),
ttime DATE
);
INSERT INTO task VALUES(5,'陈盛力','喜欢hy','三周',CURRENT_DATE());
INSERT INTO task (tname,task,tdeadline,ttime) VALUES('盛力','喜欢hy','5月3号',CURRENT_DATE());
SELECT * FROM task;
SELECT * FROM (SELECT * FROM task t ORDER BY tid ) tt LIMIT 0,2;

-- 测试用例
CREATE TABLE test(
tid INT,
tname VARCHAR(20),
tage INT
);
SELECT * FROM test;
update test set tid= 100,tname='wup',tage=24 where tid=100;
delete from test where tid= 100;
-- 处理主键重复问题
SELECT MAX(tid) FROM test;
-- 这时最好启用别名
SELECT MAX(tid) id FROM test;
SELECT * FROM test ORDER BY tid;
INSERT INTO test VALUES(2,'dfsa',3434);
select * from test where tname='dfsa';

推荐阅读
  • 探讨如何真正掌握Java EE,包括所需技能、工具和实践经验。资深软件教学总监李刚分享了对毕业生简历中常见问题的看法,并提供了详尽的标准。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 利用存储过程构建年度日历表的详细指南
    本文将介绍如何使用SQL存储过程创建一个完整的年度日历表。通过实例演示,帮助读者掌握存储过程的应用技巧,并提供详细的代码解析和执行步骤。 ... [详细]
  • MySQL缓存机制深度解析
    本文详细探讨了MySQL的缓存机制,包括主从复制、读写分离以及缓存同步策略等内容。通过理解这些概念和技术,读者可以更好地优化数据库性能。 ... [详细]
  • SQLite 动态创建多个表的需求在网络上有不少讨论,但很少有详细的解决方案。本文将介绍如何在 Qt 环境中使用 QString 类轻松实现 SQLite 表的动态创建,并提供详细的步骤和示例代码。 ... [详细]
  • 本文详细介绍了 MySQL 中 LAST_INSERT_ID() 函数的使用方法及其工作原理,包括如何获取最后一个插入记录的自增 ID、多行插入时的行为以及在不同客户端环境下的表现。 ... [详细]
  • 随着网络安全威胁的不断演变,电子邮件系统成为攻击者频繁利用的目标。本文详细探讨了电子邮件系统中的常见漏洞及其潜在风险,并提供了专业的防护建议。 ... [详细]
  • 微软Exchange服务器遭遇2022年版“千年虫”漏洞
    微软Exchange服务器在新年伊始遭遇了一个类似于‘千年虫’的日期处理漏洞,导致邮件传输受阻。该问题主要影响配置了FIP-FS恶意软件引擎的Exchange 2016和2019版本。 ... [详细]
  • 本文探讨了如何优化和正确配置Kafka Streams应用程序以确保准确的状态存储查询。通过调整配置参数和代码逻辑,可以有效解决数据不一致的问题。 ... [详细]
  • 解决MongoDB Compass远程连接问题
    本文记录了在使用阿里云服务器部署MongoDB后,通过MongoDB Compass进行远程连接时遇到的问题及解决方案。详细介绍了从防火墙配置到安全组设置的各个步骤,帮助读者顺利解决问题。 ... [详细]
  • 本文详细介绍如何使用Samba软件配置CIFS文件共享服务,涵盖安装、配置、权限管理及多用户挂载等关键步骤。通过具体示例和命令行操作,帮助读者快速搭建并优化Samba服务器。 ... [详细]
  • 深入理解Java泛型:JDK 5的新特性
    本文详细介绍了Java泛型的概念及其在JDK 5中的应用,通过具体代码示例解释了泛型的引入、作用和优势。同时,探讨了泛型类、泛型方法和泛型接口的实现,并深入讲解了通配符的使用。 ... [详细]
author-avatar
我就是个2丶
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有