说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

如何根据身份证信息提取生日信息?求相关SQL语句

编辑:说三道四文库 发布时间:2018-08-20 04:51
HTML文档下载 WORD文档下载 PDF文档下载
一张学生表,有生日和身份证和其他的字段,有的人有生日信息没身份证信息,有的相反。  
 
我想根据有身份证信息把生日提取出来并存到生日字段里,该怎么做?  
 
生日字段有的是15位,有的18位,类型文本(18位身份证有的最后一位是X,只能设成文本),好复杂。  
 
求能达到要求的SQL语句。
你可以先判断一下,15位取7-12位,18位取7-14位 
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
file_path = App.Path
    If Right$(file_path, 1) <> "\" Then file_path = file_path & "\"
connid = "Provider=Microsoft.Jet.OLEDB.3.51; Data Source=" &App.Path& "\your.mdb;"
cn.Open connid
sqlstr="select * form student"
 rs.Open sqlstr, cn, 3, 2
str=rs("身份证号")
if len(str)=15
   str=mid(str,7,6)
   str='19'&str
end if
if len(str)=18
   str=mid(str,7,8)
end if 
birthday=str
 rs.Close
  cn.Close
  Set cn = Nothing

剩下的你应该可以自己解决了
顺便说一下,我没测试!
update table set birthday=right(left(idNo,12),7) where len(id)=13
update table set birthday=right(left(idNo,14),7) where len(id)=15
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘