下面是小编给大家整理的不通过删除重建方式 重置序列值得简单方式。数据库教程,本文共4篇,欢迎大家借鉴与参考,希望对大家有所帮助。本文原稿由网友“今天睡够了吗”提供。
篇1:不通过删除重建方式 重置序列值得简单方式。数据库教程
一般来讲,序列在实际开发过程中是经常用到的一种对象,通过它来生成主键是非常方便的,但是有些时候我们需要将其重新置零,通常采用的方式就是删除后重新创建,
下面我们来看一下另外一种方式:
SQL>create sequence seq_1 increment by 1 start with 1 maxvalue 999999999;
序列已创建。SQL>create or replace procedure seq_reset(v_seqname varchar2) as 2 n number(10); 3 tsql varchar2(100); 4 begin 5 execute immediate 'select '||v_seqname||'.nextval from dual' into n; 6 n:=-(n-1); 7 tsql:='alter sequence '||v_seqname||' increment by '|| n; 8 execute immediate tsql; 9 execute immediate 'select '||v_seqname||'.nextval from dual' into n; 10 tsql:='alter sequence '||v_seqname||' increment by 1'; 11 execute immediate tsql; 12 end seq_reset; 13 /
过程已创建,
SQL>select seq_1.nextval from dual;
NEXTVAL--------- 2
SQL>/
NEXTVAL--------- 3
SQL>/
NEXTVAL--------- 4
SQL>/
NEXTVAL--------- 5
SQL>exec seq_reset('seq_1');
PL/SQL 过程已成功完成。
SQL>select seq_1.currval from dual;
CURRVAL--------- 1
SQL>
这样可以通过随时调用此过程,来达到序列重置的目的。
此存储过程写的比较仓促,还可以进一步完善,在此就不再进一步讲述。
篇2:ADO.net中数据库连接方式数据库教程
ado|数据|数据库|数据库连接
在MSDN中,.net的数据库连接字符串都有详细的说明,我这里以代码范例的方式罗列一些,具体的每一项代表的意义可以参看MSDN.
ADO.net 中数据库连接方式(微软提供)
微软提供了以下四种数据库连接方式:
System.Data.OleDb.OleDbConnection
System.Data.SqlClient.SqlConnection
System.Data.Odbc.OdbcConnection
System.Data.OracleClient.OracleConnection
下面我们以范例的方式,来依次说明:
System.Data.SqlClient.SqlConnection
常用的一些连接字符串(C#代码):
SqlConnection conn
= new SqlConnection( “Server=(local);Integrated Security=SSPI;database=Pubs”);
SqlConnection conn
= new SqlConnection(“server=(local)\\\\NetSDK;database=pubs;Integrated Security=SSPI”);
SqlConnection conn = new SqlConnection(
“Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;”);
SqlConnection conn = new SqlConnection(
“ data source=(local);initial catalog=xr;integrated security=SSPI;
persist security info=False;workstation id=XURUI;packet size=4096; ”);
SqlConnection myConn = new
System.Data.SqlClient.SqlConnection(“Persist Security Info=False;Integrated
Security=SSPI;database=northwind;server=mySQLServer”);
SqlConnection conn = new SqlConnection(
“ uid=sa;pwd=passwords;initial catalog=pubs;data source=127.0.0.1;Connect Timeout=900”);
更多字符串连接说明请看MSDN:
msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemDataSqlClientSqlConnectionClassConnectionStringTopic.asp
System.Data.OleDb.OleDbConnection
常用的一些连接字符串(C#代码):
OleDbConnection conn = new OleDbConnection(@“Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\MyWeb\\81\\05\\GrocerToGo.mdb”);
OleDbConnection conn = new OleDbConnection(
@“Provider=Microsoft.Jet.OLEDB.4.0;Password=;
User ID=Admin;Data Source=grocertogo.mdb;”);
OleDbConnection conn = new OleDbConnection(
“Provider=MSDAORA; Data Source=ORACLE8i7;Persist Security Info=False;Integrated Security=yes”);
OleDbConnection conn = new OleDbConnection(
“Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\\bin\\LocalAccess40.mdb”);
OleDbConnection conn = new OleDbConnection(
“Provider=SQLOLEDB;Data Source=MySQLServer;Integrated Security=SSPI”);
更多字符串连接说明请看MSDN:
msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemDataOleDbOleDbConnectionClassConnectionStringTopic.asp?frame=true
System.Data.OracleClient.OracleConnection
常用的一些连接字符串(C#代码):
OracleConnection myConn = new System.Data.OracleClient.OracleConnection(
“Data Source=Oracle8i;Integrated Security=yes”);
更多字符串连接说明请看MSDN:
msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemDataOracleClientOracleConnectionClassConnectionStringTopic.asp?frame=true
System.Data.Odbc.OdbcConnection
常用的一些连接字符串(C#代码):
OdbcConnection conn = new OdbcConnection(
“Driver={SQL Server};Server=MyServer;Trusted_Connection=yes;Database=Northwind;”);
OdbcConnection conn = new OdbcConnection(
“Driver={Microsoft ODBC for Oracle};Server=ORACLE8i7;
Persist Security Info=False;Trusted_Connection=yes”);
OdbcConnection conn = new OdbcConnection(
“Driver={Microsoft Access Driver (*.mdb)};DBQ=c:\\bin\\nwind.mdb”);
OdbcConnection conn = new OdbcConnection(
“Driver={Microsoft Excel Driver (*.xls)};DBQ=c:\\bin\\book1.xls”);
OdbcConnection conn = new OdbcConnection(
“Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ=c:\\bin”);
OdbcConnection conn = new OdbcConnection(“DSN=dsnname”);
更多字符串连接说明请看MSDN:
msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemDataOdbcOdbcConnectionClassConnectionStringTopic.asp?frame=true
其他厂商提供的数据库连接:
DB2Connection myConn = new IBM.Data.DB2.DB2Connection(
“DATABASE = SAMPLE;UID= ;”);
DB2Connection myConn = new IBM.Data.DB2.DB2Connection(“DATABASE = SAMPLE”);
BdpConnection myConn = new Borland.Data.Provider.BdpConnection(“assembly=Borl
and.Data.Mssql,Version=1.1.0.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b;ve
ndorclient=sqloledb.dll;osauthentication=False;database=
e= ;provider=MSSQL”);
BdpConnection myConn = new Borland.Data.Provider.BdpConnection(“assembly=Borl
and.Data.Db2,Version=1.1.0.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b;ve
ndorclient=db2cli.dll;database=
password=
;provider=DB2”);
Connection Pooling
在SQL Server、OLE DB和.NET框架结构中的Data Provider中,都提供了隐式的连接池连接支持,
ADO.net中数据库连接方式数据库教程
,
你可以在ConnectionString中指定不同的参数值控制连接池的行为。比如下面的例子使OLE DB的连接池无效并自动地进行事务处理:
Provider=SQLOLEDB;OLE DB Services=-4;Data Source=localhost;Integrated Security=SSPI;
在SQL Server.NET Data Provider中提供了以下参数设置控制连接池的行为:Connection Lifttime、Connection Reset、Enlist、Max Pool Size、Min Pool Size和Pooling。
更多数据库连接信息,以及非ADO.net的连接字符串可以参看:
www.connectionstrings.com/
--
篇3:如何判断是否以独占方式打开当前数据库?数据库教程
,
就像本站中的很多问题解决方法类似,用错误陷阱即可判断了
Function testLockMode
On Error Resume Next
Dim conn As New ADODB.Connection
conn.Open “Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=L:\\IBM WinXP\\desktop\\mdb\\重复记录.mdb;Jet OLEDB:Database Locking Mode=0;”
If Err.Number = -2147467259 Then
MsgBox “文件已经在使用中,估计是被别人以独占方式打开了”
End If
End Function
方法三:
当然,你还可以直接读取currentdb属性来判断是否已经被独占打开
www.access911.net 站长收藏
篇4:简单叙述动态公式的工资系统的计算方式数据库教程
回答:
以下方法显示了最简单的动态公式系统
如果用于实际,你还可以将公式分组,将人员分部门不同组对应不同部门的人员等等,
当然,还涉及到窗体界面编程的内容,也可以通过用代码更改控件的数据源来解决。
Private Sub UpdateFormula()
'tbl_pay 表用于存放工资资料,有很多类似 FLD1 FLD2 FLD3 ... 这样的货币型字段
'tbl_formula 表用于存放计算公式
'tbl_formula 表有几个字段
'FieldName 字段用于存放 tbl_pay 中有的字段名
'formula 字段用于存放公式,类似 FLD1*FLD2+FLD3 这样的公式,前面不要放 “=” 符号
'CanPrint 字段用于标识是否允许打印
Dim strSql As String
Dim Rs As New ADODB.Recordset
Dim Conn As New ADODB.Connection
Set Conn = CurrentProject.Connection
Rs.Open “select * from tbl_formula where CanPrint=1 order by ID”, Conn, adOpenDynamic, adLockBatchOptimistic
Do Until Rs.EOF
If IsNull(Rs(“formula”)) = False Then
Conn.Execute “update tbl_pay set ” & Rs(“FieldName”) & “=” & Rs(“formula”)
End If
Rs.MoveNext
Loop
Rs.Close
Set Rs = Nothing
End Sub
www.access911.net 站长收藏