今天算是我开始着手弄毕业设计的第一天,前几天还在为题目纠结着...
原先是打算帮老师弄一个JSP网上教学网站的,说实话,我对网页设计十窍通了九窍,剩下的是一窍不通...悲剧了,还以为很简单,看了一会儿的Java Web开发,一个字,难...要有一定的html基础,诶,开始动摇了...
再加上我找了N本关于Java Web开发的书,正准备好好的大干一场,结果昨天晚上杨老师跟我说,一些精品课程的网站都是用asp做的,而且貌似学校jsp还不支持,叫我要不就用asp开发吧....继续动摇ing.....
后来和倪锐聊了一会儿,就关于毕业设计方面的事,他说现在的大学老师就是会压榨学生的劳动力,像设计一个网站,在外面能拿到2000多的报酬,在学校一点都拿不到,而且还要给老师产生利润...好吧,哥孤陋寡闻了...继续动摇ing......
最后,我试着跟杨老师说了下,如果网站做不成,我想要换个题目,我去开发一款软件,重点来了.杨老师回了一句,这样也可以呀,做的好的话,就去申请软件著作权,这样的话,连学位证书的事也搞定了.不错不错~值得一试~我问了一些关于软件著作权的事,杨老师说她清楚,看来可以把软件做出来后,直接找几个同学,把他们名字挂上去,版权费也都由他们出好了,然后交给杨老师处理,不过应该是要在1月份前做出吧,要3个月后才能拿到证书,虽然说有些加急认证的公司,但是还是不太可靠,看来这几天要加紧赶工了.
关于软件的初步构思是,我打算做一款记账软件,功能就是对数据库进行简单的插入,修改,删除,统计.不过说是简单,做起来相信还是难的,毕竟我暂时还学术不精嘛....呵呵,打算用java做,可惜现在还不知道怎么用java做桌面应用软件,不知道java能不能做成一个exe文件,然后执行.
现在讲讲今天的收获吧............
今天主要是看了mysql语句的一些用法,刚开始是通过mysql命令窗口做的,后来百度了下发现有GUI界面,于是开始寻找GUI软件了,最终打算用官方的GUI软件--MySQL Workbench
刚开始完全不会用,现在还是有点不会,比如说,为什么我打开了一个sql文件,中文却是乱码....
这下面是我今天弄的数据库,前面几张表都是通过sql语句建立的,而后面有几张是通过GUI建立的,发现了一点区别,不知道有没有影响.
DROP TABLE grade; DROP TABLE user_stu; DROP TABLE user_teacher; DROP TABLE courseinfo; DROP TABLE course; DROP TABLE student; DROP TABLE class; DROP TABLE dept; DROP TABLE college; create table college( coll_id char(2) primary key, coll_name varchar(30) not null ); create table dept( dept_id char(4) primary key, coll_id char(2) not null, dept_name varchar(30), constraint dept_fk foreign key(coll_id) references college(coll_id) ); create table class( class_id char(6) primary key, dept_id char(4) not null, coll_id char(2), class_name varchar(6) not null, constraint class_fk1 foreign key(dept_id) references dept(dept_id), constraint class_fk2 foreign key(coll_id) references college(coll_id) ); create table student( stu_id char(12) primary key, stu_name varchar(20) not null, stu_gender char(2) check(stu_gender='男' or stu_gender='女'), stu_birth datetime, nativeplace varchar(60), coll_id char(2) not null, dept_id char(4) not null, class_id char(6) not null, cometime datetime not null, constraint stu_fk1 foreign key(class_id) references class(class_id), constraint stu_fk2 foreign key(dept_id) references dept(dept_id), constraint stu_fk3 foreign key(coll_id) references college(coll_id) ); create table course( cou_id char(6) primary key, cou_name varchar(30) not null, xuefen numeric(3,1) not null, coll_id char(2) not null, dept_id char(4) not null, constraint cou_fk1 foreign key(coll_id) references college(coll_id), constraint cou_fk2 foreign key(dept_id) references dept(dept_id) ); create table courseinfo( cou_id char(6), cou_day char(1), cou_time char(1), teacher varchar(20), onchosing char(1) default '0', constraint fo_fk1 foreign key(cou_id) references course(cou_id), constraint couinfo_key primary key(cou_id,cou_day,cou_time) ); CREATE TABLE `user_stu` ( `stu_id` char(12) NOT NULL, `pwd` char(12) NOT NULL, PRIMARY KEY (`stu_id`), KEY `user2_fk` (`stu_id`), CONSTRAINT `user2_fk` FOREIGN KEY (`stu_id`) REFERENCES `student` (`stu_id`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ; CREATE TABLE `user_teacher` ( `uid` char(6) NOT NULL, `pwd` char(12) NOT NULL, `coll_id` char(2) NOT NULL, PRIMARY KEY (`uid`), KEY `user1_fk` (`coll_id`), CONSTRAINT `user1_fk` FOREIGN KEY (`coll_id`) REFERENCES `college` (`coll_id`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ; create table grade( stu_id char(12), cou_id char(6), score numeric(4,1) default 0, isdual numeric(1) default 0, constraint grade_fk1 foreign key(cou_id) references course(cou_id), constraint grade_fk2 foreign key(stu_id) references student(stu_id), constraint grade_key primary key(stu_id,cou_id) ); INSERT INTO college VALUES('01','计控学院'); INSERT INTO college VALUES('02','机械学院'); INSERT INTO dept VALUES('0101','01','自动化专业'); INSERT INTO dept VALUES('0102','01','仪表专业'); INSERT INTO dept VALUES('0103','01','计算机专业'); INSERT INTO dept VALUES('0201','02','机械设计专业'); INSERT INTO dept VALUES('0202','02','工业工程专业'); INSERT INTO dept VALUES('0203','02','机械制造专业'); INSERT INTO class VALUES('010101','0101','01','一班'); INSERT INTO class VALUES('010102','0101','01','二班'); INSERT INTO class VALUES('010201','0102','01','一班'); INSERT INTO class VALUES('010202','0102','01','二班'); INSERT INTO class VALUES('010301','0103','01','一班'); INSERT INTO class VALUES('010302','0103','01','二班'); INSERT INTO class VALUES('010303','0103','01','三班'); INSERT INTO class VALUES('020101','0201','01','一班'); INSERT INTO class VALUES('020102','0201','01','二班'); INSERT INTO class VALUES('020201','0202','01','一班'); INSERT INTO class VALUES('020202','0202','01','二班'); INSERT INTO class VALUES('020301','0203','01','一班'); INSERT INTO class VALUES('020302','0203','01','二班'); INSERT INTO class VALUES('020303','0203','01','三班'); INSERT INTO student VALUES('200501030318','张三','男','1986-1-1','河北省沧州市','01','0103','010303','2005-9-1'); INSERT INTO student VALUES('200501030218','李四','男','1986-12-10','河北省唐山市','01','0103','010302','2005-9-1'); INSERT INTO student VALUES('200501020319','王五','男','1986-11-1','河北省石家庄市','01','0102','010303','2005-9-1'); INSERT INTO student VALUES('200502020319','赵六','男','1986-11-1','河北省石家庄市','02','0202','010303','2005-9-1'); INSERT INTO user_stu VALUES('200501030318','200501030318'); INSERT INTO user_stu VALUES('200501030218','200501030218'); INSERT INTO user_stu VALUES('200501020319','200501020319'); INSERT INTO user_stu VALUES('200502020319','200502020319'); INSERT INTO user_teacher VALUES('wyf','123456','01'); INSERT INTO user_teacher VALUES('cgq','123456','02'); INSERT INTO course VALUES('010301','计算机文化基础',2.5,'01','0103'); INSERT INTO course VALUES('010302','计算机导论',2,'01','0103'); INSERT INTO course VALUES('010303','汇编语言',3.5,'01','0103'); INSERT INTO course VALUES('010201','数字电路',2.5,'01','0102'); INSERT INTO course VALUES('010202','模拟电路',3.5,'01','0102'); INSERT INTO course VALUES('010101','自动化原理',3.5,'01','0101'); INSERT INTO course VALUES('020101','机械制图',3.5,'02','0201'); INSERT INTO course VALUES('020201','工业工程原理',3.5,'02','0202'); INSERT INTO course VALUES('020301','机械制造基础',3.5,'02','0203'); INSERT INTO course VALUES('020302','铸造技术',3.5,'02','0203');
今天的收获有:
1. 创建一张表
2. 设置属性
3. 什么是主键,并且设置主键
4. 什么是外键,并且设置外键
5. 什么是索引
6. 如何将两张表联合到一起
7. 删除表
8. 插入数据
重点:
1. 若表已存在,则必须先删除表,再建立表,实行的办法是,在sql语句最前端加上drop table语句,即删除表
2. 每一张表必须都有一个主键
3. 在插入数据时,一定要按照sql语句中属性的顺序来插入,切忌....囧.....
4. 一些比较长的关键词:
constraint:约束,用于设置多个主键和链接外键时使用,后面跟主键或者外键的名称,不可重复
references:参考,即来源,跟在外键的后面.
primary key:主键
foreign key:外键
明天的任务
明天要将Java代码完成,并且链接到数据库,即完成第一个项目~
现在我的打算是,先将数据库和swing熟悉下,至于java怎么打包成exe文件,那是后面的事~不过如果能提前知道,当然好啦~
附:学习使用的主要书籍是<30天学通java项目案例开发>,虽然代码有很多处小错误...但是还好,不影响阅读.