升级诉求:Java连接Access已经算是过时的产物了,一般作为存储服务的应用在Java界比较常用的还是MySQL,
当然还有Oracle数据库。这里要讲的就是连接MySQL数据库了。
就是因为有了SQL标准,各大厂商实现SQL语句基本上大同小异,
所以我们从Access平稳的切换到MySQL数据库也比较方便快捷,
那如何进行Access数据库切换成MySQL数据呢?
下文就是指导手册了,如有问题可以联系作者一同探讨哟~
(Java连接Access数据库改成MySQL连接数据库)
这里假设你已经安装好了必要的环境: JDK1.8 Access 2016+ MySQL 5.7+Microsoft Access 2016安装教程:https://blog.csdn.net/WeiHao0240/article/details/120672363 Java使用ODBC连接Access数据库:https://blog.csdn.net/WeiHao0240/article/details/120727203 JDK8 连接Access数据库: https://blog.csdn.net/WeiHao0240/article/details/127944521 MySQL8.0和5.7安装教程: https://blog.csdn.net/WeiHao0240/article/details/86908034
需要登录即可下载
src就是源码了
card.sql 是数据库文件,可以直接导入。
Card.xlsx就是导入的数据。
mysql-connector-j-8.0.31.jar驱动文件,如果下载不下来官方的可以用这个。
这个时候数据库名可以随便取一个。
双击刚才新建的数据库,然后右击,点击新建表
接下来就是新建表数据了。
然后注意下面的1(图片中标1的地方),是主键,对应字段即可,如果没有主键就不用点击。
2 (图片中标2的地方)就是对应的字段名了,一定要一一对应上。
3 (图片中标3的地方)是类型,也要一一对应上,短文本对应的是varchar。
| Access 数据类型 | MySQL数据类型 |
|---|---|
| 短文本 | varchar |
| 长文本 | text |
| 数字 | float |
| 日期/时间 | datetime |
表名的话不要乱起,不然的话需要更换很多地方,这时候需要找到你原始连接Access的源代码(全局搜索jdbc:),
找到如下配置,可以看到最后一个是Card,那么表名就是它。
然后按<kbd>Ctrl </kbd> + <kbd>S</kbd>保存:表名输入的就是上面源码的。
这时候需要设置数据库不区分大小写了,可以查看参考资料哟~
文件名可以修改你熟悉的地方,便于查找。
然后将Excel文件导入到MySQL表里面了,需要右击表,然后点击导入向导:
选择Excel文件:
勾选新建好的表:
其他的默认即可,直接点击下一步:
可以根据自己的需求选择导入模式,这里我们选择追加模式:
点击最下面的刷新就可以看到导入的数据了。
Class.forName关键字:
修改如下
// MySQL 8.0以下版本
Class.forName("com.mysql.jdbc.Driver");
// MySQL 8.0及以上版本需要修改如下
Class.forName("com.mysql.cj.jdbc.Driver");
DriverManager.getConnection关键字:
注意3306端口号,是你安装数据库的端口号。
test是你新建数据库的名称。
用户名、密码就是MySQL安装时设置的用户名、密码。
// MySQL 8.0以下版本
DriverManager.getConnection("jdbc:mysql://localhost:3306/test","用户名","密码");
// MySQL 8.0及以上
DriverManager.getConnection("jdbc:mysql://localhost:3306/test?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC", "用户名","密码");
修改后:
// 编译
javac -cp ".;E:\Code\git\SCS\MySQL\mysql-connector-j-8.0.31.jar" -encoding utf-8 Main.java
// 运行
java -cp ".;E:\Code\git\SCS\MySQL\mysql-connector-j-8.0.31.jar" Main
注意红色方框里面的内容。
-cp是指定额外的包进行编译
-encoding utf-8 是指定文件编码。
运行截图:
jre\lib\ext目录下哟。
接下来的另一个方式就是通用的Eclipse添加外部包的方式了:
右击你的项目→Properties→Java Build Path → Libraries → Add JARs,选择驱动即可。
然后右击主类,Run As → Java Application
我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i
我正在使用Sequel构建一个愿望list系统。我有一个wishlists和itemstable和一个items_wishlists连接表(该名称是续集选择的名称)。items_wishlists表还有一个用于facebookid的额外列(因此我可以存储opengraph操作),这是一个NOTNULL列。我还有Wishlist和Item具有续集many_to_many关联的模型已建立。Wishlist类也有:selectmany_to_many关联的选项设置为select:[:items.*,:items_wishlists__facebook_action_id].有没有一种方法可以
我真的很习惯使用Ruby编写以下代码:my_hash={}my_hash['test']=1Java中对应的数据结构是什么? 最佳答案 HashMapmap=newHashMap();map.put("test",1);我假设? 关于java-等价于Java中的RubyHash,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/22737685/
我使用的是Firefox版本36.0.1和Selenium-Webdrivergem版本2.45.0。我能够创建Firefox实例,但无法使用脚本继续进行进一步的操作无法在60秒内获得稳定的Firefox连接(127.0.0.1:7055)错误。有人能帮帮我吗? 最佳答案 我遇到了同样的问题。降级到firefoxv33后一切正常。您可以找到旧版本here 关于ruby-无法在60秒内获得稳定的Firefox连接(127.0.0.1:7055),我们在StackOverflow上找到一个类
我正在尝试编写一个将文件上传到AWS并公开该文件的Ruby脚本。我做了以下事情:s3=Aws::S3::Resource.new(credentials:Aws::Credentials.new(KEY,SECRET),region:'us-west-2')obj=s3.bucket('stg-db').object('key')obj.upload_file(filename)这似乎工作正常,除了该文件不是公开可用的,而且我无法获得它的公共(public)URL。但是当我登录到S3时,我可以正常查看我的文件。为了使其公开可用,我将最后一行更改为obj.upload_file(file
有时我需要处理键/值数据。我不喜欢使用数组,因为它们在大小上没有限制(很容易不小心添加超过2个项目,而且您最终需要稍后验证大小)。此外,0和1的索引变成了魔数(MagicNumber),并且在传达含义方面做得很差(“当我说0时,我的意思是head...”)。散列也不合适,因为可能会不小心添加额外的条目。我写了下面的类来解决这个问题:classPairattr_accessor:head,:taildefinitialize(h,t)@head,@tail=h,tendend它工作得很好并且解决了问题,但我很想知道:Ruby标准库是否已经带有这样一个类? 最佳
我正在尝试使用boilerpipe来自JRuby。我看过guide从JRuby调用Java,并成功地将它与另一个Java包一起使用,但无法弄清楚为什么同样的东西不能用于boilerpipe。我正在尝试基本上从JRuby中执行与此Java等效的操作:URLurl=newURL("http://www.example.com/some-location/index.html");Stringtext=ArticleExtractor.INSTANCE.getText(url);在JRuby中试过这个:require'java'url=java.net.URL.new("http://www
我只想对我一直在思考的这个问题有其他意见,例如我有classuser_controller和classuserclassUserattr_accessor:name,:usernameendclassUserController//dosomethingaboutanythingaboutusersend问题是我的User类中是否应该有逻辑user=User.newuser.do_something(user1)oritshouldbeuser_controller=UserController.newuser_controller.do_something(user1,user2)我
什么是ruby的rack或python的Java的wsgi?还有一个路由库。 最佳答案 来自Python标准PEP333:Bycontrast,althoughJavahasjustasmanywebapplicationframeworksavailable,Java's"servlet"APImakesitpossibleforapplicationswrittenwithanyJavawebapplicationframeworktoruninanywebserverthatsupportstheservletAPI.ht
我正在尝试使用Curbgem执行以下POST以解析云curl-XPOST\-H"X-Parse-Application-Id:PARSE_APP_ID"\-H"X-Parse-REST-API-Key:PARSE_API_KEY"\-H"Content-Type:image/jpeg"\--data-binary'@myPicture.jpg'\https://api.parse.com/1/files/pic.jpg用这个:curl=Curl::Easy.new("https://api.parse.com/1/files/lion.jpg")curl.multipart_form_