重新编译所有无效的PL/SQL模块(对象)
当Oracle数据库创建完成后,系统将会自动运行utlrp.sql这个脚本文件(D:\oracle\product\10.1.0\Db_1\RDBMS\ADMIN),但是,当通过定制安装类型的方式创建了数据库时,系统则不会运行utlrp.sql这个脚本,所以,建议在创建、更新或迁移一个数据库后,运行一下utlrp.sql这个脚本,以验证数据库安装是否成功,这样可以重新编译所有可能处于无效的PL/SQL模块(包、存储过程、类型、函数等等),这个步骤是可选的,但是推荐该步骤。注意:在运行该脚本期间,数据库中不允许有其它的数据库定义语言(DDL)运行并保证STANDARD和DBMS_STANDARD两个包处于有效状态。
步骤:
1)启动SQL*PLUS并以DBA角色的账户连接到数据库
SQL>sqlplus /nolog
SQL>conn lijing/lijing as sysdba
SQL>@D:\oracle\product\10.1.0\Db_1\RDBMS\ADMIN\utlrp.sql
相关文档:
Sql代码
--采用SQL语句实现sql2005和Excel 数据之间的数据导入导出,在网上找来一--下,实现方法是这样的:
--Excel---->SQL2005 导入:
select * into useinfo from O ......
http://www.umgr.com/blog/PostView.aspx?bpId=36294
1. 执行sql语句
int sqlite3_exec(sqlite3*, const char *sql, sqlite3_callbacksql 语法
, void *, char **errmsg );
这就是执行一条 sql 语句的函数。
第1个参数不再说了,是前面open函数得到的指针。说了是关键数据结构。
第2个参数const char ......
比方说在查询id是50的数据时,如果用户传近来的参数是50 and 1=1,如果没有设置过滤的话,可以直接查出来,SQL 注入一般在ASP程序中遇到最多,
看看下面的
1.判断是否有注入
;and 1=1
;and 1=2
2.初步判断是否是mssql
;and user>0
3.判断数据库系统
;and (select count(*) from sysobjects)>0 mssql ......
1、截断日志:
backup log 数据库 with no_log
或:
清空日志
DUMP TRANSACTION 库名 WITH NO_LOG
2、 & ......
第一种采用预编译语句集,它内置了处理SQL注入的能力,只要使用它的setString方法传值即可:
String sql= "select * from users where username=? and password=?;
PreparedStatement preState = conn.prepareStatement(sql);
preState.setString(1, userName);
preState.setString(2, password);
ResultSet rs = ......