出现的问题:
1、改变数据库中的某个表名时,eclipse中报错为连接数据异常的错误;
2、在几经辗转后,虽然解决了连接异常的报错,但是!!又出现数据库相关的错误【心碎~崩溃~想放弃!!】但年轻人嘛,不怕吃苦,不怕犯错。。哈哈哈
3、数据库相关的错误:数据库中切切实实的存在表,但依然在eclips中报错“XXXXX”数据库表不存在【再度心碎~】
4、Unknown column ” in ‘field list’字段名报错
解决方案:【咬牙在几千行代码中找出的错,泪目+心碎】
1、改变表名称后,相应的MySQL和JAVA代码中用到对应数据库该表的地方都得仔细找出,然后逐个改成改变后表名。Ctrl + F 很便捷
2、为避免You have an error in your SQL syntax 报错的出现,建议将代码段放到MySQL中试运行。我的代码:
SELECT
stu_id,
stu_name,
stu_user_id,
stu_create_id,
b.dict_item_name stu_grade,
c.dict_item_name stu_class,
d.dict_item_name stu_level,
stu_linkman,
stu_phone
FROM student a
LEFT JOIN(
SELECT
dict_id , dict_item_name
FROM
base_dict
WHERE
dict_type_code = '003')
b ON a.`stu_grade`=b.dict_id
LEFT JOIN(
SELECT
dict_id , dict_item_name
FROM
base_dict
WHERE
dict_type_code = '002')
c ON a.`stu_class` =c.dict_id
LEFT JOIN(
SELECT
dict_id , dict_item_name
FROM
base_dict
WHERE
dict_type_code = '006')
d ON a.`stu_level`=d.dict_id
代码中绿色块块的地方为MySQL的关键字,不能使用这个符号 “ ' ”(Enter左边的单引号),而应该使用这个符号“`”(Esc下边的单引号)。
3、Unknown column ” in ‘field list’报错很尴尬,前不久强转数据类型导致报错,今天出现这种错误,也是尬死。解决方法:新表中的字段和JAVA代码中的字段没对应,我查找后发现我的新表中删了一些元素,但JAVA代码中仍然存在,所以报错;另外一种原因是表中字段名有空格、回车之类的【这很细节】(因为鄙人也经历过)。。。嗯。。经历过的记起来的目前就这些
4:第1、3、4个错误解决后,正常连接上了数据库!!
总结:
一: 为什么会出现数据库中明明有表的存在,但是eclipse中还会出现此表不存在。原因是:
1、代码中表名没对应上新的表名
2、在JAVA代码中存在错误MySQL的语法(比如编码不对应、关键字引用错误等等)
二:为什么数据库连接经常报错,前一秒能连接,后边就连不上了??
1、一般情况下,db文件写完之后,如果能连接上,就是在JAVA代码中用到了错误的MYQSL语法,如果连不上,则是数据库驱动程序配置错误,我连接异常报错,就是因为在eclipse中用错了MySQL的符号。。。
(检查JAVA中MySQL语句有无错误的小技巧:将代码段Ctrl+c到SQLYyog中)
。。。。。。持续。。。未完。。