数据库语言(三):MySQL、PostgreSQL、JDBC
MySQL
MySQL资料很多,这里只给出一个在论坛博客中最常用的操作:分页
mysql> select pname from product limit 10,20;
limit的第一个参数是偏移(相当于记录的索引,从0开始计数),第二个参数是返回的记录的数目。第一个参数如果不写,默认为0。
PostgreSQL简介
我们可以通过一些图形界面的管理程序,例如pgadmin来管理postgresql数据库,通过可视化或者命令行的方式的创建新的对象,删除和编辑现有的对象(例如目录,模式,表等对象),再通过JDBC或者ODBC来访问它们。
界面操作:
要打开一个到服务的连接,在树中选择所需的服务,并双击它,或使用“工具”菜单上的连接即可。
在主窗口中,显示数据库的结构。您可以创建新的对象,删除和编辑现有的对象,如果你使用的是当前连接到数据库用户的权限,在主窗口的左侧显示所有服务器,以及它们所包含的对象树。
右上方显示,目前在树中选定的对象的详细信息。右下方包含一个SQL脚本。
1.文件菜单
在文件菜单中当点击服务器根节点下某个节点时可以更改连接密码。
点击选项(o)按钮中您可以调节些属性,例如:用户界面的语言,偏好,SQL语法高亮的颜色等。菜单中还可以对postgresql.conf, pg_hba.conf, pgpass.conf文件进行编辑。来优化postgresql的性能。添加所需的服务器,使用菜单中“添加服务器”。在新服务器登记的时候可以选择组。当按下“确定”按钮时,将出现新组并且服务器包含在其中。这个类似文件夹的功能可以将服务器按照类型或用途分组。
2.编辑菜单
点击编辑菜单可以对数据库和对象做相应的操作。(右键所选对象相当于编辑中所有相关功能)
3.插件
启动psql控制台并连接到在pgAdmin中所选的数据库。可以输入相应的命令。
4.视图
用来调节页面视图的显示。例如:打开与关闭SQL窗口。
5.工具
在主窗体左面的对象树中点击不同的节点 工具中菜单的高亮显示可做相应的操作。(所选对象右键操作可达到相同效果但工具中可以打开查询工具)。
6.帮助
可以查看帮助文档
执行sql:
从工具菜单或工具栏中打开sql查询,在SQL编辑器中输入相应的SQL语句,点绿色箭头可以执行该SQL语句,也可以选中部分执行。(执行SQL语句快捷键F5)。在下方输出窗口中可以查看相应的结果。点击菜单查询解释(快捷键Shift+F7)分析会出现相应的解释图类似于图形化查询。还可以保存数据。
图形化查询构造器允许用鼠标来构建查询:从导航器中拖动数据表和视图到图形面板中,在他们之间添加连接,点击检查框增加字段,追加条件以及设置结果顺序。
可以从桌面拖拽一个文件到查询文本框然后释放它,查询工具会自动打开这个文件。
操作各种对象:
数据库的创建。选中数据库=>右键=>新建数据库
系统默认模式为public可以建其他模式。只有相应的权限才能看见模式下的内容。
表的创建和修改。选中数据表=>右键=>新建数据库表(特别注意新建表时表名与字段名要小写,因为它会区分大小写。大写或者大小写混的会加上双引号)右键选中所要操作的表选择新建对象可以对表做相应的操作。例如:新增字段等。
备份与恢复。
右键选择要备份的数据库。用pgadmin可以把postgres备份成三种格式,compress,tar,plain。compress最小,是压缩过的,但是里面乱码。文件以.backup结尾tar比较大,上面有几行是乱码,下部分都是数据,格式看上去不太整齐。文件以.backup结尾。plain也很大,但不是乱码,里面的内容很整齐,分为两部分,上部分是相关的属性和数据表的信息。下部分全是数据。字段用一个Tab分隔。
然而恢复时只有compress和tar的文件能够恢复。也就是以.backup结尾的
sql语法
基本的数据库操作,就是使用一般的SQL语言。
# 创建新表 CREATE TABLE usertbl(name VARCHAR(20), signupdate DATE); # 插入数据 INSERT INTO usertbl(name, signupdate) VALUES('张三', '2013-12-22'); # 选择记录 SELECT * FROM user_tbl; # 更新数据 UPDATE user_tbl set name = '李四' WHERE name = '张三'; # 删除记录 DELETE FROM user_tbl WHERE name = '李四' ; # 添加栏位 ALTER TABLE user_tbl ADD email VARCHAR(40); # 更新结构 ALTER TABLE usertbl ALTER COLUMN signupdate SET NOT NULL; # 更名栏位 ALTER TABLE usertbl RENAME COLUMN signupdate TO signup; # 删除栏位 ALTER TABLE user_tbl DROP COLUMN email; # 表格更名 ALTER TABLE usertbl RENAME TO backuptbl; # 删除表格 DROP TABLE IF EXISTS backup_tbl;
postgresql的JDBC
java中编写的代码是:
import java.sql.*;
Class.forName("org.postgresql.Driver").newInstance();
String url ="jdbc:postgresql:5432//localhost/harddisk"
//myDB为数据库名
String user="myuser";
String password="mypassword";
Connection conn= DriverManager.getConnection(url,user,password);
或者
String sql = "select * from test"; // 连接字符串,格式: "jdbc:数据库驱动名称://数据库服务器ip/数据库名称"
String url = "jdbc:postgresql://localhost/soft";
String username = "scott";
String password = "tiger"; Class.forName(""org.postgresql.Driver").newInstance(); Connection conn = DriverManager.getConnection(url, username, password);
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE
, ResultSet.CONCUR_UPDATABLE);
ResultSet rs = stmt.executeQuery(sql); rs.close();
stmt.close();
conn.close();
数据库语言(三):MySQL、PostgreSQL、JDBC的更多相关文章
- C语言对mysql数据库的操作
原文:C语言对mysql数据库的操作 这已经是一相当老的话题.不过今天我才首次使用,把今天的一些体会写下来,也许能给一些新手带来一定的帮助,更重要的是供自己今后忘记的怎么使用而进行查阅的! 我们言归正 ...
- Linux centos 7/ubantu下: 用 C 语言连接 MySQL数据库
前言:最近用IPC.socket做ATM.聊天项目,考虑到需要用到数据库,所以总结一下centos.ubantu环境下怎么用C语言操作数据库,例如常见的增删改查等! 一.Centos环境安装mysql ...
- 使用Go语言操作MySQL数据库的思路与步骤
最近在做注册登录服务时,学习用Go语言操作MySQL数据库实现用户数据的增删改查,现将个人学习心得总结如下,另外附有代码仓库地址,欢迎各位有兴趣的fork. 软件环境:Goland.Navicat f ...
- {MySQL数据库初识}一 数据库概述 二 MySQL介绍 三 MySQL的下载安装、简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 初识sql语句
MySQL数据库初识 MySQL数据库 本节目录 一 数据库概述 二 MySQL介绍 三 MySQL的下载安装.简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 ...
- 各种数据库(oracle、mysql、sqlserver等)在Spring中数据源的配置和JDBC驱动包----转
在开发基于数据库的应用系统时,需要在项目中进行数据源的配置来为数据 库的操作取得数据库连接.配置不同数据库的数据源的方法大体上都是相同的,不同的只是不同数据库的JDBC驱动类和连接URL以及相应的数据 ...
- IDEA用Maven连接MySQL的jdbc驱动,并操作数据库
1.在IDEA里创建Maven项目 1.1.点击Create New Project 1.2.选择Maven,JDK这里用的是1.8,点击Next 1.3.填入“组织名”.“项目名”,版本是默认 ...
- IDEA导入MySQL的jdbc驱动,并操作数据库
将MySQL的jdbc驱动,导入IDEA的方式,虽然也能连接并且操作数据库,但并不推荐这种方式,推荐使用Maven工程的方式:https://www.cnblogs.com/dadian/p/1193 ...
- Python进阶----数据库的基础,关系型数据库与非关系型数据库(No SQL:not only sql),mysql数据库语言基础(增删改查,权限设定)
day37 一丶Python进阶----数据库的基础,mysql数据库语言基础(增删改查,权限设定) 什么是数据库: 简称:DataBase ---->DB 数据库即存放数据的仓库, ...
- C语言连接MySQL数据库(课程设计总结)
刚结束课程设计,也预示着假期立即就要到来了.本次课程设计并不算难,无非就是让做一个XXX系统,实现用户的注冊.登录.菜单管理.超级用户等等一些功能,到如今为止已经做过好几个了,所以基本流程都熟悉了! ...
- C语言连接MySql数据库
C语言连接MySql数据库(CodeBlocks) 操作系统:Windows7(32位)编译软件:Code::Blocks 10.05数 据 库:mysql-5.1.62-win32 数据库内的数据: ...
随机推荐
- (一)、http原理
谣言粉碎机前些日子发布的<用公共WiFi上网会危害银行账户安全吗?>,文中介绍了在使用HTTPS进行网络加密传输的一些情况,从回复来看,争议还是有的.随着网络越来越普及,应用越来越广泛,一 ...
- mysql_fetch_row,mysql_fetch_array,mysql_fetch_object,mysql_fetch_assoc区别
1.mysql_fetch_row 只能以索引下标取值,从0开始. 2.mysql_fetch_array 能以索引下标取值,也可以用字段名称取值. 3.mysql_fetch_object 对象方 ...
- pl/sql tutorial
http://plsql-tutorial.com/plsql-procedures.htm What is PL/SQL? PL/SQL stands for Procedural Language ...
- SGU 114
114. Telecasting station time limit per test: 0.25 sec. memory limit per test: 4096 KB Every city in ...
- java基础知识回顾之---java String final类普通方法的应用之“模拟字符串Trim方法”
/* * 4,模拟一个trim功能一致的方法.去除字符串两端的空白 * 思路: * 1,定义两个变量. * 一个变量作为从头开始判断字符串空格的角标.不断++. * 一个变量作为从尾开始判断字符串空 ...
- 220 DIV2 A. Inna and Pink Pony
Inna and Pink Pony 输入n,m,i,j,a,b 可以看成n行m列的矩阵,起点(i,j),每次移动(a,b),(-a,-b),(-a,b),(a,-b) 可移动到(1,m),(n,1) ...
- cojs 白树黑 黑树白 题解报告
黑树白 首先如果不是强制在线,这个题用莫队+树状数组就可以在O(n*sqrt(n)*log(n))的时间内搞定 如果没有修改操作,可以直接上主席树就可以辣 我们考虑修改操作,某一个修改操作对于某一个查 ...
- Project Euler 87 :Prime power triples 素数幂三元组
Prime power triples The smallest number expressible as the sum of a prime square, prime cube, and pr ...
- [topcoder]HappyLetterDiv2
http://community.topcoder.com/stat?c=problem_statement&pm=13245 就是有字符串,里面的字符可以随意两两消除,如果不等的话,那么最后 ...
- 【nginx运维基础(3)】Nginx的编译PHP
Apache默认是把PHP作为本身的一个模块(mod_php)来运行的,而Nginx是以FastCGI方式运行的.所以使用Nginx+PHP就是直接配置为FastCGI模式. 安装PHP 下载地址: ...