㈠ 如何查看数据库中的数据
数据库一般查看数据的话有两种:
1.
利用SQL的SELECT语句;
2.
通过图形命令的查询按钮。
当然你将数据导出,当然也是可以的。导出,可以直接导出的目录,还可以指定导出的文件类型。
㈡ h2数据库递归查不来数据
h2数据库递归查不来数据原因如下。
1、可能出现类型不匹配的问题:例如数据库中存储拆裂的是int类型的值嫌贺,前端传递过来的是string类型的值,所以查询不到匹配的数据。
2、还有就是可能存在数据库缓存的问题:这里数据库的二级缓存,即是对数据的crud有影响,每次的crud之后,查询的数据都是从数据库的缓存中获取的数据,不是从数据库中获取的最新的旅者闭数据。
㈢ 怎么远程访问H2数据库的内存模式
简单来说就是用jdbc:h2:mem:h2db来建立内存模式,并建表,
然后jdbc:h2:tcp://192.168.20.141:8082/mem:h2db来访问上面的内存数据库
package test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import org.h2.tools.Server;
public class H2Demo {
private Server server;
private String port = "8082";
private static String sourceURL1 = "jdbc:h2:mem:h2db";
private static String sourceURL2 = "jdbc:h2:tcp://192.168.20.141:8082/mem:h2db";
private String user = "shorturl";
private String password = "123456";
public void startServer() {
try {
System.out.println("正在启动h2...");
server = Server.createTcpServer(
new String[] { "-tcpPort", port }).start();
} catch (SQLException e) {
System.out.println("启动h2出错:" + e.toString());
// TODO Auto-generated catch block
e.printStackTrace();
throw new RuntimeException(e);
}
}
public void stopServer() {
if (server != null) {
System.out.println("正在关闭h2...");
server.stop();
System.out.println("关闭成功.");
}
}
public void useH2() {
try {
Class.forName("org.h2.Driver");
Connection conn = DriverManager.getConnection(sourceURL1,user, password);
Statement stat = conn.createStatement();
// insert data
stat.execute("CREATE MEMORY Table TEST(NAME VARCHAR)");
stat.execute("INSERT INTO TEST VALUES('Hello World')");
//stat.execute("delete mappedURL");
// use data
ResultSet result = stat.executeQuery("select name from test ");
int i = 1;
while (result.next()) {
System.out.println(i++ + ":" + result.getString("name"));
}
result.close();
stat.close();
conn.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void useH2i() {
try {
Class.forName("org.h2.Driver");
//Connection conn = DriverManager.getConnection("jdbc:h2:" + dbDir+";AUTO_SERVER=TRUE;MVCC=TRUE",user, password);
Connection conn = DriverManager.getConnection(sourceURL2,user, password);
Statement stat = conn.createStatement();
// use data
ResultSet result = stat.executeQuery("select name from test");
㈣ h2数据库中如何导出数据啊请知道朋友的不吝指教。
数据的导出:
² 导出到Access:
在导出数据之前,如果要导出的是刚才导入的表,请确认由导入的数据表中多余的列要删除!!!
(1)打开SQL Server管理平台,右击服务器图标,从弹出的快捷菜单中选择“所有任务→导出数据”选项,则会出现数据转换服务导入和导出向导对话框,它显示了导出向导所能完成的操作。
(2)单击“下一步”按钮,就会出现选择导出数据的数据源对话框。这里在数据源栏中选择“Microsoft OLE DB Provider for SQL Server”选项,然后选择身份验证模式以及数据库的名称。
(3)单击“下一步”按钮,则会出现选择目的对话框。
(4)选定目标数据库后,单击“下一步”按钮,则出现指定表复制或查询对话框。
(5)单击“下一步”按钮,则出现选择源表和视图对话框。其中可以选定将源数据库中的哪些表格或视图复制到目标数据库中,只需单击表格名称左边的复选框,即可选定或者取消删除复制该表格或视图。单击“编辑…”按钮,就会出现列映射对话框。
(6)选定某个表格后,单击“预览”按钮,就会出现查看数据对话框,在该对话框中可以预览表格内的数据。单击“下一步”按钮,则会出现“保存并执行包”对话框。在该对话框中,可以设定立即执行还是保存包以备以后执行。
(7)单击“下一步”按钮,就会出现导出向导结束对话框。
㈤ H2数据库
According to documentation, closing the last connection closes the database and when closing the database, the database is automatically compacted for up to 200 milliseconds
.
I guess these together may cause data loss & corruption when a
single connection is repeatedly created, data altered, connection
closed, new connection created, etc. - eventually resulting in
exception such as "Block not found in id [1, -128, 8, 42] [1.4.186/50]"
when trying to access the DB. Version 1.3.176 (last stable) works fine with this, version 1.4.186 crashes and corrupts data.
The
behavior can be fixed by appending ";DB_CLOSE_DELAY=-1" to the DB URL,
i.e. disabling autoclosing DB when last connection is closed. I though
it might have had something to do with 1.4's new "FS" file locking
protocol, but changing that to old "FILE" doesn't seem to help.
Of
course this is not how a DB connection is typically used - when using a
connection pool, this would go unnoticed - and I found this purely by
accident. But it's a bug anyway, isn't it?
Best Regards,
Joonas
狗哥找的
㈥ 什么是H2数据库
H2是Thomas Mueller提供的一个开源的、纯java实现的关系数据库。
H2是一个开源的嵌入式数据库引擎,采用java语言编写,不受平台的限制,同时H2提供了一个十分方便的web控制台用于操作和管理数据库内容。H2还提供兼容模式,可以兼容一些主流的数据库,因此采用H2作为开发期的数据库非常方便。
H2最大的用途在于可以同应用程序打包在一起发布,这样可以非常方便地存储少量结构化数据。
它的另一个用途是用于单元测试。启动速度快,而且可以关闭持久化功能,每一个用例执行完随即还原到初始状态。
H2的第三个用处是作为缓存,作为NoSQL的一个补充。当某些场景下数据模型必须为关系型,可以拿它当Memcached使,作为后端MySQL/Oracle的一个缓冲层,缓存一些不经常变化但需要频繁访问的数据,比如字典表、权限表。不过这样系统架构就会比较复杂了。
(6)h2数据库如何查看扩展阅读:
H2数据库运行方式:
1、内存模式
数据库只在内存中运行,关闭连接后数据库将被清空,适合测试环境,连接字符串:jdbc:h2:mem:DBName;DB_CLOSE_DELAY=-1,如果不指定DBName,则以私有方式启动,只允许一个连接。
2、嵌入式
数据库持久化存储为单个文件。连接字符串:jdbc:h2:file:~/.h2/DBName;AUTO_SERVER=TRUE。~/.h2/DBName表示数据库文件的存储位置,如果第一次连接则会自动创建数据库。
3、服务模式
H2支持三种服务模式:web server:此种运行方式支持使用浏览器访问H2 Console。
CP server:支持客户端/服务器端的连接方式。
PG server:支持PostgreSQL客户端。
㈦ 有谁知道H2数据库如何打开,查看里面的表或者数据,
java -cp 路径\h2-1.3.175.jar org.h2.tools.Shell
㈧ 如何查看数据库
1.通过系统的“性能”来查看:
开始->管理工具->性能(或者是运行里面输入 mmc)然后通过
添加计数器添加 SQL 的常用统计(MSSQL General Statistics) 然后在下面列出的项目里面选择 用户连接(User Connection) 就可以时时查询到sql server数据库连接数了。
2.通过系统表来查询:
SELECT * FROM
[Master].[dbo].[SYSPROCESSES] WHERE [DBID]
IN
(
SELECT
[DBID]
FROM
[Master].[dbo].[SYSDATABASES]
WHERE
NAME=’databaseName’
)
databaseName 是需要查看的数据库,然后查询出来的行数,就是当前的sql server数据库连接数。不过里面还有一些别的状态可以做参考用。
或者使用以下查询语句:
select * from sysprocesses where dbid in (select dbid from sysdatabases where name=’MyDatabase’)
㈨ h2数据库在linux服务器怎么使用
简单来说就是用jdbc:h2:mem:h2db来建立内存模式,并建表, 然后jdbc:h2:tcp://192.168.20.141:8082/mem:h2db来访问上面的内存数据库 package test; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; imp...