sql - Please help me correct the syntax error -
i error when execute query below. i'm doing wrong?
msg 512, level 16, state 1, line 3 subquery returned more 1 value. not permitted when subquery follows =, !=, <, <= , >, >= or when subquery used expression.
select so.name 'table name' ,so.id 'table id' ,so.xtype ,sc.name 'column name' ,sc.id 'column id' ,sf.constid ,sf.fkeyid 'object id of table foreign key' ,sf.rkeyid 'referenced table id' ,(select o.name 'referenced table' sysforeignkeys f inner join sysobjects o on o.id=f.rkeyid o.xtype='u') sysobjects inner join syscolumns sc on so.id=sc.id inner join sysforeignkeys sf on so.id=sf.fkeyid so.xtype='u' , (sc.name 'ssn' or sc.name 'ssn%' or sc.name 'ssn%' or sc.name '%_ssn%' or sc.name '_ocsecno' or sc.name 'ssn%');
i don't think subquery correct has no way of referencing sysobjects aliased "so". try instead. don't think need such long clause.
select so.name [table name] ,so.id [table id] ,so.xtype ,sc.name [column name] ,sc.id [column id] ,sf.constid ,sf.fkeyid [object id of table foreign key] ,sf.rkeyid [referenced table id] ,zz.name [reference table] sysobjects inner join syscolumns sc on so.id = sc.id inner join sysforeignkeys sf on so.id = sf.fkeyid --use join here reference table column inner join sysobjects zz on zz.id = sf.rkeyid so.xtype='u' and( sc.name '%ssn%' or sc.name '_ocsecno' )
Comments
Post a Comment