Declare @password Varbinary(5000) Declare @passwordseed DateTime Set @passwordseed=GetDate() Set @password=HashBytes('Sha1', cast(@passwordseed as NVarchar) +'P@ssw0rd1') Select @passwordSeed as seed, @password as [password] use Automart Alter table Customer.RegisteredCustomer add HashedPassword varbinary(5000) Update Customer.RegisteredCustomer Set hashedPassword=hashbytes('sha1', CustomerPassword) where RegisteredCustomerID=1 Select * from Customer.RegisteredCustomer Declare @myPassword nvarchar(20) set @myPassword='amypass' Declare @hPassword varbinary(5000) Set @hPassword=hashbytes('sha1',@myPassword) if exists (Select hashedPassword from Customer.RegisteredCustomer where hashedPassword=@hPassword) Begin print 'Successful Login' End Else Begin Print 'Login Failed' End Declare @myPassword nvarchar(20) set @myPassword='jpass' Declare @hPassword varbinary(5000) Set @hPassword=hashbytes('sha1',N'jpass') if exists (Select hashedPassword from Customer.RegisteredCustomer where hashedPassword=@hPassword) Begin print 'Successful Login' End Else Begin Print 'Login Failed' End --backups -- change recovery model ALTER DATABASE Automart SET RECOVERY SIMPLE; --ALTER DATABASE Automart SET RECOVERY BulkLogged; ALTER DATABASE Automart SET RECOVERY full; -- create a full backup of Automart BACKUP DATABASE Automart TO DISK = 'C:\Backups\Automart.bak' with init; use Automart Alter table Customer.RegisteredCustomer add HashedPassword varbinary(500) -- create a differential backup of Automart appending to the last full backup BACKUP DATABASE Automart TO DISK = 'C:\Backups\Automart.bak' with differential; -- create a backup of the log use master; BACKUP LOG Automart TO disk = 'C:\Backups\AutomartLog.bak' WITH NORECOVERY, NO_TRUNCATE; create table TestTable ( ID int identity(1,1) primary key, MyTimestamp datetime ); insert into TestTable values ( GETDATE() ); use Automart; select * from TestTable; -- restore from the full backup use master; RESTORE DATABASE Automart FROM disk = 'C:\Backups\Automart.bak' with norecovery, file = 1; -- restore from the differential backup on file 2 RESTORE DATABASE Automart FROM disk = 'C:\Backups\Automart.bak' with norecovery, file = 2; -- restore from the differential backup on file 3 RESTORE DATABASE Automart FROM disk = 'C:\Backups\Automart.bak' with norecovery, file = 3; -- restore from the log use master; RESTORE LOG Automart FROM disk = 'C:\Backups\AutomartLog.bak' WITH NORECOVERY; restore database Automart; --Full Text Catalog use Master --add a filegroup Alter Database Automart Add Filegroup FullTextCatalog use Automart --add a table with some text Create Table TextTest ( TestId int identity (1,1) primary key, TestNotes Nvarchar(255) ) --insert text Insert into TextTest(TestNotes) Values('For test to be successful we must have a lot of text'), ('The test was not successful. sad face'), ('there is more than one test that can try a man'), ('Success is a relative term'), ('It is a rare man that is always successful'), ('The root of satisfaction is sad'), ('men want success') Select * From TextTest --create full text catalog Create FullText Catalog TestDescription on Filegroup FullTextCatalog --Create a full text index Create FullText index on textTest(TestNotes) Key Index PK__TextTest__8CC331603A9A1988 on TestDescription With Change_tracking auto --run queries on the full text catalog --find all instances that have the word "sad" Select TestID, TestNotes From TextTest Where FreeText(TestNotes, 'sad') --do the same with successful Select TestID, TestNotes From TextTest Where FreeText(TestNotes, 'successful') Select TestID, TestNotes From TextTest Where Contains(TestNotes, '"success"') --look for any words containing the letters "success" --the * is a wildcard Select TestID, TestNotes From TextTest Where Contains(TestNotes, '"success*"') --looks for all grammatical forms of a word Select TestID, TestNotes From TextTest Where Contains(TestNotes, ' Formsof (Inflectional, man)') --finds words near another word Select TestID, TestNotes From TextTest Where Contains(TestNotes, ' not near successful') Select TestID, TestNotes From TextTest Where Contains(TestNotes, ' sad near successful') Select ServiceName, ServiceDescription.query ('declare namespace s="http://www.automart.com/servicedescription"; //s:servicedescription/s:labor') From Customer.AutoService Where ServiceName='Tune Up' Select * From Customer.AutoService
Tuesday, July 30, 2013
Misc SQL Server Stuff (Hash, backup, fulltext)
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment