mysql,sqlserver,oracle三种数据库的大对象存取
mysql 大对象存取:
类型一般应该用mediumblod,
blob只能存2的16次方个byte,
mediumblod是24次方,
一般来说够用了.longblob是32次方有些大.
MYSQL默认配置只能存1M大小的文件,要修改配置,WIN版本的在mysql.ini文件中
修改max_allowed_packet,net_buffer_length等几个参数,或直接SET GLOBAL varName=value.
linux版本可以在启动参数后加-max_allowed_packet=xxM等几个参数.
MYSQL存大对象最好直接就setBinaryStream,又快又方便.
而不要先插入空再造型成BLOB然后再setBlob
例子:
import java.sql.*;
import java.io.*;
public class DBTest {
static String driver = "org.gjt.mm.mysql.Driver";
static String url = "jdbc:mysql://localhost:3306/test";
static String user = "root";
static String passwd = "passwd";
public static void main(String[] args) throws Exception {
Connection conn = null;
try {
Class.forName(driver);
conn = DriverManager.getConnection(url,user,passwd);
int op = 1;
//插入
if (op == 0) {
PreparedStatement ps = conn.prepareStatement("insert into tb_file values (?,?)");
ps.setString(1, "aaa.exe");
InputStream in = new FileInputStream("d:/aaa.exe");
ps.setBinaryStream(2,in,in.available());
ps.executeUpdate();
ps.close();
}
else {
//取出
PreparedStatement ps = conn
相关文档:
首先,我们要确定数据库运行在何种优化模式下,相应的参数是:optimizer_mode。可在svrmgrl中运行“show parameter optimizer_mode"来查看。ORACLE V7以来缺省的设置应是"choose",即如果对已分析的表查询的话选择CBO,否则选择RBO。如果该参数设为“rule”,则不论表是否分析过,一概选用RBO,除非在语句中 ......
Join是一种试图将两个表结合在一起的谓词,一次只能连接2个表,表连接也可以被称为表关联。在后面的叙述中,我们将会使用”row source”来代替”表”,因为使用row source更严谨一些,并且将参与连接的2个row source分别称为row source1和row source 2。Join过程的各个步骤经常是串行操作,即使相关的r ......
运行环境:windows xp sp2
IIS v5.1
PHP 5.3.1-Win32-VC9-x86
Mysql 5.0
安装步骤:
安装IIS5.1
在 ......
#两日期/时间之间相差的天数:
To_Days(end_time)-To_Days(start_time)
#两日期/时间之间相差的秒数:
SELECT UNIX_TIMESTAMP(end_time)- UNIX_TIMESTAMP(start_time);
#两日期/时间之间相差的时分数:
SELECT SEC_TO_TIME(UNIX_TIMESTAMP(end_time)- UNIX_T ......
my.cnf 或者是 my.ini
在[MySQL(和PHP搭配之最佳组合)d]配置段添加:
max_connections = 1000
保存,重启MySQL(和PHP搭配之最佳组合)服务。
然后用命令:
MySQL(和PHP搭配之最佳组合)admin -uroot -p variables
输入root数据库账号的密码后可看到
| max_connections | 1000 |
启动mysql服务
RedHat ......