|
Hi!
Check my blog at http://www.cubido.at/Blog/tabid/176/EntryID/34/Default.aspx. There I show how you can encrypt and decrypt the password column with SQL2005.
If you do not have SQL2005 but 2000 you do not have these smart encryption functions built into the DB. You would have to implement encryption yourself (e. g. using .NET's encryption functions). In fact for a password it would be enough to calculate a (salted) hash (see http://en.wikipedia.org/wiki/Salt_%28cryptography%29 for details) -> no encryption needed.
A completly unsecure solution that just displays the password in binary instead of cleartext is to change the data type of the password column to varbinary. A SELECT will then just show hex values. Again, this is NOT encryption. Everyone how is able to write SQL can write cast(password as varchar) and sees the password. However, sometimes it is enough to just changing the display format of the password to binary.
Regards,
Rainer.
Rainer Stropek
Visit my blog at http://www.cubido.at/rainers
|
|
|
|
|
|
You're right, this is also a storage format. However, as far as I understood the question the application is Microsoft's enterprise manager or management studio -> you do not have the possiblitiy to change the display format without changing the storage format. If the original question did not regard to pre-built standard software but to individually developed software I aggree to you.
Regards,
Rainer.
Rainer Stropek
Visit my blog at http://www.cubido.at/rainers
|
|
|
|
|
how to build and execute a query in user defined functions?
Swaroop.
|
|
|
|
|
|
Hi!
It is not supported to build and execute a dynamic query in user defined functions. UDFs have to be deterministic -> no exec( @MyVar ) allowed.
Rainer.
Rainer Stropek
Visit my blog at http://www.cubido.at/rainers
|
|
|
|
|
i have sqlserver data base and i want to store sounds in the database and reterive these sound how?!!!!!!!!!!!!!!
ma_refay
|
|
|
|
|
|
hai
I want to protect my database from anyone other than i. How I can set a password to my single Database. This is in Intranet. I have sql server username and Password(ie Sa and some pwd).
Pls help me
|
|
|
|
|
|
does anyone know using SQL server 2000 a select statement or system table to look up the active connections to a database
Thanks in advance.
|
|
|
|
|
sp_who
----------
Some problems are so complex that you have to be highly intelligent and well informed just to be undecided about them.
- Laurence J. Peters
|
|
|
|
|
Hie,
I tried out samples in MSDN regarding how to enable autoincrement of an ID through Stored Procedure, it works. Now I'm having doubts where I wanted to insert the ID which is auto-incremented in parent table when a new record is added, to be inserted in the child table.
I just make an illustration for example, StaffAccount Table (Parent Table)having StaffID as primary key, it is auto-incremented using stored procedures-succesfully completed, now the StaffID is the foreign key in Login Table(Child Table), I want the StaffID to be added automaticallly in child table once a new record has been inserted in parent table.
How is this possible?
Thanks in advance for helping in reading this.
=)
best regards amygal
|
|
|
|
|
Hi!
Your stored proc could look like this:
create procedure AddNewPerson
@Name varchar(50)
as
set nocount on
insert into StaffAccountTable ( StaffName ) values ( @Name )
insert into Login ( StaffID, ... ) values ( @@identity, ... )
go
Hope this helps.
Regards,
Rainer
Rainer Stropek
Visit my blog at http://www.cubido.at/rainers
|
|
|
|
|
Hi Rainer,
thanks for the reply
but it seemed having some prob:
I had tried the stored procedure u had specify, but is generate error says that no null value can be inserted into the Login Table. Alright, I had set the StaffID in child table of Login AS Not Allow Null, I guess tis is the prob, but yet if i changed the setting to Set as Allow Null, the result the same- IT does not insert the auto-generated StaffID in (Staff Record)Parent Record to the (Login)child table.
Here is my Procedure
Create PROCEDURE InsertStaffAccount
@StaffName varchar(20),
@Gender char(10),
@Address varchar(50),
@Position varchar(20),
@Identity int OUT
AS
SET nocount On
INSERT INTO StaffAccount(StaffName,Gender,Address,Position) VALUES (@StaffName,@Gender,@Address,@Position)
INSERT INTO StaffLogin(StaffID,Password) VALUES (@@Identity,@Identity)
SET @Identity = SCOPE_IDENTITY()
go
any Idea??
|
|
|
|
|
It looks to me like the @Identity output parameter is the problem. It is NULL at the time that you insert into StaffLogin.
Are you trying to put a password into the StaffLogin table?
What value do you want the password to be?
----------
Some problems are so complex that you have to be highly intelligent and well informed just to be undecided about them.
- Laurence J. Peters
|
|
|
|
|
yes, the password is one of the field in staffLogin table.
My intention is Once a new Staff Record is added, StaffID will be autogenerated and saved the new record in Staff Table.
In the same time, I wish the StaffLogin Table will be populated with the new StaffID as autogenerated in Staff Table and together with the password. Of course, since it is a new staff record, the Stafflogin table does not have the value of staffID and the password yet, it is added as a new record only in the same time as New Staff Record is added in the Staff Account. How is this possible?
The value of the password for the initial add record purpose is similar as the staffID which is auto-generated in the Staff Table, then i will add code to allow user to change the vaue of password on their first login.How is this possible?
thanks again
best regard
amy
|
|
|
|
|
CREATE PROCEDURE InsertStaffAccount
@StaffName VARCHAR(20),
@Gender CHAR(10),
@Address VARCHAR(50),
@Position VARCHAR(20),
@Identity INT OUT
AS
SET NOCOUNT ON
INSERT INTO StaffAccount(StaffName,Gender,Address,Position) VALUES (@StaffName,@Gender,@Address,@Position)
SET @Identity = SCOPE_IDENTITY()
INSERT INTO StaffLogin(StaffID,Password) VALUES (@Identity ,str(@Identity))
GO
----------
Some problems are so complex that you have to be highly intelligent and well informed just to be undecided about them.
- Laurence J. Peters
|
|
|
|
|
Hie EricDV
Thanks alot for the help. It really workos. The auto-generated staffID does populate the Login Table. But there is one weird thing, why the paswword seemed to have extra space infront of the StaffID? Eg. *****10011 * represent the space why is it so?
how to eliminate the extra space in front of the password??
thanks
best regard
amygal
|
|
|
|
|
LTRIM(STR(@Identity))
You're welcome. Isn't this fun?
----------
Some problems are so complex that you have to be highly intelligent and well informed just to be undecided about them.
- Laurence J. Peters
|
|
|
|
|
hey EricDV
It's really cool, =) juz a simple line of code. very bravo of u
Everything working fine now exept there is still some small msg box pop up.
A msgbox pop up with " Procedure or function 'InsertStaffAccount expect parameter '@staffName' which was not supplied. Is that a bug?
how to make it dissapear as evryhign seemed to work fine now
thanks again
very kind and helpful of u
=)
best regards
amygal
|
|
|
|
|
@myg@l wrote: A msgbox pop up with " Procedure or function 'InsertStaffAccount expect parameter '@staffName' which was not supplied. Is that a bug?
Yes. a few posts back, you defined your stored proc with these parameters:
@StaffName varchar(20),
@Gender char(10),
@Address varchar(50),
@Position varchar(20),
@Identity int OUT
You need to supply them when you call the procedure.
----------
Some problems are so complex that you have to be highly intelligent and well informed just to be undecided about them.
- Laurence J. Peters
|
|
|
|
|
hie again
=)
yea i had added the stored procedure with the parameters above, but i cant get u bout to supply them when i call the procedure
any example??
*_*
amygal
|
|
|
|
|
It depends on where you are executing it from. If you call it from the SQL Query Analyzer, then:
declare @iIdentity int<br />
<br />
exec InsertStaffAccount 'John Smith','Male','123 5th Street','CEO',@iIdentity out<br />
<br />
print @iIdentity
Are you trying to call it from C++,C#,VB.Net,ASP.NET???
----------
Some problems are so complex that you have to be highly intelligent and well informed just to be undecided about them.
- Laurence J. Peters
|
|
|
|
|
yeah, I'm trying to call it from VB.NET is there any difference?
|
|
|
|