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

delphi 需求如下:查询各个表中的数据列的数据类型,除int外,所有数据都要通过加密代码加密,代码写到如何读取类型所对应的列值时

编辑:说三道四文库 发布时间:2017-10-20 08:04
HTML文档下载 WORD文档下载 PDF文档下载
delphi 数据库 select //数据库数据加密 Schema 数据库名称,Name:要查询的表的名称
procedure TOperationDM.DataOperations(Schema:String;Name:String);
var
  i,j,k:Integer;
  strSql,allSql:String;
  counts:Integer;
  list :TStringList;
  strType:Sting;

begin
  list :=TStringList.Create;
  OperationADOCon.Close;
  OperationADOCon.ConnectionString:= TOper.readParamdb;
  OperationADOCon.Open;
  try
     with ADOQuery1 do
     begin
        strSql := 'SELECT DATA_TYPE FROM information_schema.`COLUMNS`'
                +'WHERE TABLE_SCHEMA LIKE "'+Schema+'" '
                +'AND TABLE_NAME LIKE "'+Name+'"';

        ADOQuery1.Close;
        ADOQuery1.SQL.Clear;
        sql.Add(strSql);
        ADOQuery1.Open;
        counts := ADOQuery1.RecordCount;
        if(counts >0) then
        begin
          for i:=0 to counts-1 do
          begin
           list.Add(ADOQuery1.fieldbyName('DATA_TYPE').AsString);
          end;
          for j:=0 to list.Count-1 do
          begin
             strType := list[j];
             if (Trim(strType) <> 'int') then   //判定,除了int类型的数据以外其他类型的数据全部加密
             begin
                 //将数据类型所对应的数据进行加密操作(问题是这个对应的值如何获得呢,请高手赐教,本人刚接触delphi还有很多东西高步清楚的)
               
             end;
          end;
        end;
     end;
  finally
   OperationADOCon.Close;
   ADOQuery1.SQL.Clear;
   ADOQuery1.Close;
  end;
end;
泪奔了,请高手指教
既然用ADO,那就
直接用TADOQuery去
SELECT 表名的全部字段
用TField取类型和值即可。
如 Fields[0].DataType 和 Fields[0].AsString (或 As 其它类型)
你会发现ADO.Connection提供很多与Schema有关的信息。
谢谢,我试试,能不能解决
下面的那部分调用加密的程序基本完成,可是到那个得到数据类型,列名,那部分查询出来10条数据,可是当我取值的时候,程序会把第一条重复10次保存到list中,什么原因,我之前都是这么写的,
for i:=0 to counts-1 do
          begin
           list.Add(ADOQuery1.fieldbyName('DATA_TYPE').AsString+‘=’+ADOQuery1.fieldByName('column_name').AsString);
end;

这里的counts就是我ADOQuery1.RecordCount值
加密后存储,加密方法很多用密钥自定义规则,或者用MD5等等已经有成熟案例的加密方法,至于显示时要不要加密看需求,只加密关键字段,犯不着什么东西都加密,累不累,有没有必要?
重复10次保存到list?没看到你有Next,移动指针了吗?
写了next就可以了,我也是刚学习的,还多东西一时间注意不到
高手,问你一个问题,例如我现在有个list,list中的数据是 ‘001’,‘003’,‘001’,‘005’我要怎么给这个list进行分组
要么查询出数据后放到list再去写分组的算法,要么在数据查询的时候在SQL里做分组(这种方法更方便快捷),再插入list
恩不能写个案例出来,刚刚弄这个delphi,好多地方有点转不过弯来
用 TStringList,它有个参数是 Objects,那你就可以把分组后的内容放在第二层。

比如你有这样的数据:

'001', '000012'
'002', '000063'
'001', '000015'

你想用第一个Field去分组,也就是

'001' 下有一个List内容为 '000012' 和 '000015'
'002' 下有一个List内容为 '000063'

那就这么写:

1.找到001,取出它内部的List,插入'000012'
2.没找到001,新增一个List,插入'000012'和'001'一起插入到分组List

比如分组List叫 GList: TStringList; 
内容List叫 List: TStringList;

则上面代码就是

Str1:='001';
Str2:='000012';
......
Index:=GList.IndexOf(Str1);
if Index>=0 then //找到了
  TStringList(GList.Objects[Index]).Add(Str2)
else //没找到
begin
  List:=TStringList.create;
  List.Add(Str2);
  GList.AddObject(Str1, List);
end;

不知道这样子是不是你所谓分组的意思?
如果不是,拜托你把分组的意思讲明白。
我现在这个东西已经解决,谢谢!
还有个问题,就是list中的数据为list{'001=2','002=3','001=4','003=6'}
等号前面是编号,等号后面是得分,delphi 中TStringList是可以这么写的
我想得到一个新的list的list{'001=6','002=3','003=6'},意思就是如果编号一样的则将得分相加,不相等的直接将这一项存在新的list中
高手们,你们都什么时候出没的,神龙见首不见尾的
没有必要搞list的list,每次做动作之前循环判断一下你的list不就行了,有则相加,没有则插进去
能写个小例子出来吗
中国云计算大会PPT集萃(四):数据安全与实际应用挑战 CDN前景光明,SDN发展的驱动力源于对产业的颠覆 Android、WP双系统若要发展 难题不断 即将于下周召开的微软Build 2014六个愿望清单 【独家专访】腾讯陈磊:你不知道腾讯对开源有多爱 地下数据交易网站Rescator被黑,疑似Target报复 Spark独门秘籍:打造结构一体化、功能多元化的高效数据流水线 【走进支付宝】重磅嘉宾!历届“走进企业”回顾 【OSTC讲师专访】腾讯TDW项目:开源的分布式数据仓库 ID爆发的物联网时代,我们该如何管理手中的数百个账户 取代Google Maps?苹果大幅优化Apple Maps用户体验 中交兴路系统架构师杨晓明:Hadoop+Storm+ HBase…,打造交通行业创新型服务 雨果&#183;巴拉的第二春:我与小米的那些事儿 为什么Android Wear能统领智能手表领域? LinkedIn缘何抛弃Ruby,转投NodeJS怀抱 【OSTC讲师专访】九秒社团李明:开源对游戏产业的渗透与帮助 IBM 2014中国论坛:挖掘新互联网时代下“智慧企业”的发展之路 Facebook工程部副总裁Cory Ondrejka谈企业在早期所遇到的管理瓶颈 小团队管理工具选择:不需要大而全 《近匠》聚合CEO左磊:基础数据免费,API开放 IDC:HTML5与原生应用之争还将长存 不甘称臣,Google誓要击败Amazon 【OSTC讲师专访】腾讯追风(QcloudMna):开源移动加速SDK Google Go:一门为云而生的编程语言 3月26日:没有Larry Page,就没有今天的Google Hortonworks再获1亿美元融资,Hadoop领域三足鼎立 Intel收购Basis Science,欲拓展可穿戴设备市场 Facebook以20亿美元收购Oculus:虚拟现实将是未来计算平台又一大事件 基于NodeJS的14款Web框架 Hadoop导航:版本、生态圈及MapReduce模型 把黑匣子送上“云” 失联困境能否不再 请教高手:怎样在一个窗口里能够输入文本文件(按回车键) 另一个窗口显示出同样的文本 高手在何方 (大力请进)sql字符串处理的问题 上哪能下到exchange 2000,下到马上给分! ado问题? 数据迁移问题??? 怎么把列名选出来? [在线求助]:有什么好的方法可以使得鼠标放上有链接的地方状态栏不显示真实地址? 高手在哪!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 各位大哥﹐何為微创软件开发管理﹖﹖﹖﹖ 3com switch 3300 xm 有网管的功能吗? 关于窗口大小的问题,快来捡分~~~ 为什么2001年前的提问的问题、得分的问题、信誉分变化纪录都不见了。 无法在人才频道上提交简历。。。 请问:wsad4支持滚轮鼠标的插件哪里有下载??? 自动锁定计算机? 请问如何终止一个正在运行的应用程序 无法在人才频道上提交简历。。。 后面数据库为ms sql server2000的时间问题? DoEvents 怎么用?(不好意思,只有这么多分了!) CSDN真让我失望,大家都喜欢回答无聊的问题(不要回复) jdbc中LIKE条件如何使用prepareStatement? 请问,如果想报考系分的话,需要先过高程吗? 请问怎么把Excel形式的表结构导入到Oracle … 请问数据窗口中如何自动记录资料修改的帐户? 我倒要看看谁有本事让javac输出这样的信息? ADSL 可以直联吗? linfeng1216 (林枫) 请来领分。 在java中的暴露事件如何处理? 求PowerDesigner电子书籍资料!急! 有关_SERVER["HTTP_CONNECTION"] 两个窗体 带有setup程序和一堆代码的电子书怎么看? 这个web控件谁能介绍的详细一点 DCOM的配置问题 三国经典故事(女性,18岁以下者勿进) TIME_WAIT问题(100分!!!) linfeng1216 (林枫) 请来领分。 求C++Test2.1的license 我在用ASP.NET编程,请问如何让Datagrid的head显示两行,并且可以合并单元格。在线等 我的程序这样写对不对? 表格宽度的问题! linfeng1216 (林枫) 请来领分。 履约费小计=履约合同费1+履约合同费2 计算问题。 问问unix下进程的问题 javascript中的函数互相调用? 为了我们的生殖健康,坚决反对婚前性行为!!---人类生殖健康的天敌:支原体感染,不是艾滋的艾滋! 大家说说我该不该向这个MM表达? Marshal 问题求救 linfeng1216 (林枫) 请来领分。 多客户端同时调用com+方法时的耗时 一个正方体水池的表面积是80平方分米,缸高16厘米,水原来的高是8厘米正方体水池放入石块后,水深上升到12厘米,求这个石块的体积越简便越好 《咏雪》一文中用哪两句来比喻大雪纷纷的 梨树黑星病的防治有什么? 旗杆外部没有旗绳为什么有的旗杆外没有旗绳,而转轮在旗杆内部,也能升旗.这是怎么回事 夜雨寄北和咏雪用什么和什么来比拟大雪纷纷 7.仿照例句,在下面两句的横线上补写相应的内容.例:如果我是阳光,我将照亮所有的黑暗.如果我是清风,我将--------------- .如果我是春雨,我将------------------. 一道数学问题,详见问题补充.甲圆柱形容器的底面半径是乙圆柱形容器底面半径的2倍(容器直立放置).现以相同流量同时向这两个空容器内注入水,经过一定的时间,甲、乙两个容器内水面的 英语翻译1他们以勇敢为荣耀(honour)2他们用暴力证明自己勇敢(violence) 请问反犬旁再加一个央,和反犬旁加一个茶,家里没有大的词典.实在是不好查啊.只好救助大家了. 辨别古文字还有下面的小字 富士山是活火山吗?什么时候喷发?周期是多少?分析一个地区的地貌特征,要从哪些方面考虑? 梨树得了黑星病怎么办? 小明看到生旗时旗杆上的旗子迎风飘扬,猜想在气球下面系一面旗子,当气球升到空中以后,如果刮起了风,气球下面的旗子也会飘起来吧!于是他动手做实验发现旗子并不会飘起来,他仍然下垂.你 细胞分裂使细胞趋向专门化,提高了机体生理功能的效率这句话为什么是错的? 梨树黑星病怎么治 甲、乙两只蚂蚁,同时从一跟绳子的两端向中间爬,20分钟后相距6米,这时甲爬了全长的40%,乙爬了全长的75%,求绳长. 活火山什么时候喷发 梨树谢花黑星病怎么办 甲开车,发现乙正往反方向步行走去,10分钟后把车停下跑去追乙.已知甲跑步的速度是乙的3倍,汽车的速度是乙的10倍,问甲追上乙需要几分钟? 梨树 桃树 杏树 你不让我我不让你 抓住春天里的花什么特点 咏雪只是客观写了谢家子弟咏雪的事,对子兄,子女的两个比喻并为加评论,但作者褒贬在其中,为什么 线段AB被M分成3:5两段,同时又被点N分成3:1两段,如果MN=12厘米,求线段AB的长. 《咏雪》一文的主要内容 草还会再长出孩子不会再来阅读答案当麦克3周岁时,他要了一个玩具沙箱.他爸爸说:“我们的院子完了,以后小孩一天到晚往花场里扔沙子,猫也会凑热闹,那些草必死无疑.”  而麦克的母亲 This is the reason whyhe late for school为什么用why,why可不可以省 2012的新年手抄报怎么做啊,(要内容,版面设计!)急---------------------- 《咏雪》只是客观地写出谢家子弟咏雪的事,对兄子与兄女的两个比喻并未做任何评论,但作者的褒贬却已在其中,一望而知,为什么? 谢道韫咏絮中,“公大笑乐”的原因是什么?继! 人教版七年级数学上册77页第八题 高中生物细胞增殖部分怎么学?特别是DNA和染色体在什么时候加倍. 日本的活火山有哪些 升旗手护旗手事迹简介开头怎么写字数不要多了! 有哪些细胞不再增殖(高中生物),请全部列举 地球上现在有多少座活火山? 升国旗的时候,护旗手如何把旗撇好,就是出去后,能让旗飘起来护旗手先把旗扬起来,旗手在升,可怎么扬才最佳!希望有经验的同学让告诉我,最好是天安门广场升旗班的同志告诉我! 修一条路,16天完成了全长的百分之48,己知修路队平均每天修60米.这条公路长多少千米? 中国有活火山吗?在哪? 哪位说说升国旗过程中,旗手举旗行进时,四个旗手应让旗面保持在什么样的一个角度? 梨树的资料 要写作文地 算式中的图形用数字代替,使算式成立. 逆转录的过程是病毒侵入活细胞的过程吗 一亩田种紫花苜蓿草需要多少草种 有木有用来形容看不透人心的句子,可以简短,但一定要有深度要有内容,诗也可以的. 我做了一回主.作文 草籽跟草子有什么区别 获一二三等奖的人占总人数的几分之几?其中获一二等奖的人占总人数的五分之三,二三等奖的人占总人数的八分之七 英语翻译即书诗四句,并自为其名.书:____ 为:____日眅仲永环谒于邑人.于: 咏雪 解释词语 兄女 因 兄子 判断题:1-a一定小于1 若对于有理数a,b,有a+b=0,则a=0,b=0.两个数的和一定大于每一个加数.速求正确谢 求以"让我做了一回主''为题目的500作文 用草做动物造型用什么草种好 生日蛋糕上写什么字好诗意的 以 今天我做了一回主 为题写一篇600字文章.初1水平的. 结缕草草籽现在种适合吗?现在种结缕草可以适合吗?该怎么种的啊? 谢道韫 《咏雪》中的名句是那句? 病毒侵入细胞内后 为什么体液免疫可限制病毒移动 咏雪的诗句有哪些? 10米多高的旗子,绳子掉下来了,如何把旗子再换上去呢?绳子如何穿过旗杆顶端的定滑轮?有没有知道的?谢公司里的旗子破了,我打算把它换下来,自己没注意,一个绳子跑到了上面.最后整个绳子 咏雪一文中用____和____来比拟大学纷纷. 解海龙简介 美澳科学家呼吁 研发更安全核能替代矿路透社:黑市汇率在朝鲜大行其道推特调高IPO发行价区间南京富二代杀妻案庭审结束 被告人愿赔日媒:中国和日本被美国列入“重点监视台向美购阿帕奇战机抵台组装测试(图)台向美购阿帕奇战机组装过程曝光(组图克里急赴中东安抚盟友沙特中国梦惠及非洲英超市香蕉出剧毒蜘蛛 全家躲出三晚消美海军一教练机坠毁 两飞行员受伤送医曝孙杨所载女子为新女友 已与大5岁空独家:小沙丘 大文章——本网记者探访韩国总统朴槿惠赴英访问 重点商讨经济美一T-45C“苍鹰”教练机坠毁 机叙政府不参加日内瓦会议 称不会参与交日本拟造两艘宙斯盾护卫舰 将搭载最新美媒:28%美国人视中国为全球头号经马来西亚保安现状存隐患 保安员过半是日本拟造两艘宙斯盾护卫舰 将搭载最新美媒:28%美国人视中国为全球头号经吉林省通化市发布寒潮蓝色预警陕西省咸阳市发布霾黄色预警“希望马拉松”首次来渝 参与慈善义跑陕西省渭南市发布霾黄色预警辽宁省盘锦市发布大风蓝色预警山东省青岛市发布大风蓝色预警浙江拐卖20人特大贩婴案宣判 主犯辩云南某高校校园小巴侧翻 同学:司机以首个“世界海啸日” 日本多地举行防灾精武门华南摆擂台 亚运城首迎综合格斗中国老龄产业协会首次培训医养结合照护北京:截至今日10时前南航取消进出港20位省部长联合登台推介品牌农产品 珠海航展惹的祸!一男子因表演太精彩憋刘晓东任沈阳副市长,曾任辽宁省科技厅台湾高速公路发生9车连环撞重大车祸 日媒:韩国将举行数万人大规模集会要求郑州市工商局发布双11消费警示:理性2016WEC上海6小时 练习赛精彩贵州黔南用大数据在公职人员头上套“紧精武门华南摆擂台 亚运城首迎综合格斗
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘