数据库/存储 2021_08_03 每日一练


oracle 插入中文提示无效字符

SQL> insert into artile values(2,1,1,'大象被打趴下了aa','大象被打趴下了aa',sysd

ate,1);

SQL> insert into article values(1,0,1,'sfdsfdsf','dfafsafaf',sysdate,1);把字符换成字母就可以,请问是什么问题

查看答案

Oracle decode() 跟序列问题

select decode(max(Id),null,(select ids.currval from dual),max(Id)) id from users

这样提示此处不允许使用序号 要什么办法才能达到想要的效果呢?

查看答案

VB 记录数据库的数据入库单号,最后一个记录查不到,但ACCESS数据库中有此记录.

VB 入库时,入库单号是自动导入且累加,(如:RUKU0001....RUKU000N)时,在记录过程中,是自动导入累加,但每次执行1~N次不等,就无法自动导入入库单号.清空数据库重0001开始又可以执行,但执行到自动导编号000N(N代表从1~N)的时候就完了,最后增加那一个查找不到,也加载不了,但在数据库中已有记录.如下简易代码.

Private Sub Cmdcazao_Click()  '入库单号查找

Dim swl As String

Dim rw As New ADODB.Recordset

List1.Clear

swl = "select * from ruku"

rw.Open swl, Conn, adOpenKeyset, adLockPessimistic

While rw.EOF = False

   List1.AddItem rw.Fields("danhao")  '将查找的入库单记录在LIST1控件中

   rw.MoveNext

Wend

rw.close

rw.Close

End Sub

Private Sub Cmdjilu_Click()   '入库记录

Dim SQL2 As String              '以下代码是自动导入入库单号

Dim Rs2 As New ADODB.Recordset

Dim i1 As String

Dim i2 As String

Dim j1As String

Dim j2 As String

i2 = "ruku"

j2 = "0001"

   SQL2 = "select * from ruku"

   Rs2.Open SQL2, Conn, adOpenKeyset, adLockPessimistic

   While (Rs2.EOF = False)

   If Rs2.EOF = False Then

       j2 = Format(j2, "#0000")

       j1 = Trim(i2 & j2)

       If Trim(Rs2.Fields("danhao")) = j1 Then

           List1.AddItem Trim(Rs2.Fields("danhao"))

           j2 = j2 + 1        

       Else

           Label3.Caption = j1

           Rs2.MoveNext

       End If

   Else

       j2 = Format(j2, "#0000")

       j1= Trim(i2 & j2)

       Label3.Caption = j1

   End If

   Dim svl As String       经以上入库单号自动导入后,即开始增加入库记录

   Dim rv As New ADODB.Recordset

   List1.Clear

   svl = "select * from caiwupinzhen"

   rv.Open sv, Conn, adOpenKeyset, adLockPessimistic

   if Label3.Caption <> "" then

       rv.addnew

       rv.fields("danhao") = Label3.caption

       rv.update

   end if

   rv.movenext

 wend

rv.close

end sub

       以上所出现的问题是:当增加到3~20个不等,自动导入入库单号的时候,最后一个记录查找不到(意思如:记录单号从RUKU0001开始~记录到RUKU0005, 按照程序导入方式下一个应该是RUKU0006,但实际导入的是RUKU0005. 利用查找程序,也查找不到RUKU0005之单号,但进入数据库中,RUKU0005是有记录的.经确认数据库中是存在RUKU0005记录,进入VB继续执行入库操作,不管入库多少次,始终入库单号是RUKU0005,回到数据库,数据库中RUKU0005被入库时不断的累计,入多少次就增加了多少个RUKU0005.)

把数据库数据清空,从RUKU0001开始,执行到RUKU0007或RUKU0025时(不等的情况下)又出现以上问题点了.

出现这种问题是什么原因,如何解决? 调试了半天,头的晕了,我是新手.自学的.很多不懂,还请各位高手指点指点..感激不尽..

查看答案

大家帮我看看这段SQL哪出现了语法错误,为什么报列名无效,在PL/SQL里能正确执行啊

Struts Problem Report

Struts has detected an unhandled exception:

Messages: 

    列名无效

    Hibernate operation: could not execute query; bad SQL grammar [ select a.* from knowledge_answers a inner join user_accounts d on a.answer_user=d.id where 1=1 and a.answer_user=15]; nested exception is java.sql.SQLException: 列名无效

查看答案

请教:2012年3月全国计算机等级《二级VF》冲刺试卷(2)第1大题第1小题如何解答?

【题目描述】

SQL语句中,SELECT命令中的JOIN是用来建立表间的联系短语,联接条件应出现在下列哪个短语中(  )。

A) WHERE

B)ON

C)HAVING

D)INNER

 

 

查看答案

sql 链接数据库时候,程序走到CLSIDFromProgID就返回假了,请问是什么原因,另外安装sql 2005需要配置odbc

我就是想做一个简单的链接数据库 取出数据的一个简单的例子,不需要其他的东西,现在就是链接的时候每次到 //

    HRESULT CreateInstance(LPCWSTR clsidString, IUnknown* pOuter = NULL, DWORD dwClsContext = CLSCTX_ALL) throw()

    {

        if (clsidString == NULL) {

            return E_INVALIDARG;

        }

        CLSID clsid;

        HRESULT hr;

        if (clsidString[0] == L'{') {

            hr = CLSIDFromString(const_cast<LPWSTR> (clsidString), &clsid);

        }

        else {

            hr = CLSIDFromProgID(const_cast<LPWSTR> (clsidString), &clsid);

        }

        if (FAILED(hr)) {

            return hr;//每次都跳到这里,请问会是什么情况造成的呢?

        }

        return CreateInstance(clsid, pOuter, dwClsContext);

    }

请问回事什么原因 呢?

查看答案

sql语句:如何根据一个身份证的字段取出相应的年龄?

例如有一列是身份证号,然后要根据身份证号把所有人的年龄现实出来,应该如何写呢?

查看答案

请教:北京华建集团SQL面试题第1大题第2小题如何解答?

【题目描述】

2.为管理岗位业务培训信息,建立3个表:

S (S#,SN,SD,SA)  S#,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄

C (C#,CN )       C#,CN      分别代表课程编号、课程名称

SC ( S#,C#,G )   S#,C#,G    分别代表学号、所选修的课程编号、学习成绩

要求实现如下5个处理:

 1. 使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名

 2. 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位

 3. 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位

 4. 使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位

 5. 查询选修了课程的学员人数

 6. 查询选修课程超过5门的学员学号和所属单位

 

查看答案