Translate my page with google translate

August 31, 2010 ·

Translate my page with google translate

As we all know the world is getting multilingual,in our daily lives, specially on internet we find the things which are in another language and we need a way to translate it into the language we understand

As we all know about Google Translate is the place we all will go and paste the content that we want to translate,but what if we have power of that tool into our website or web page,yes it is possible with GOOGLE TRANSLATE (which is able to translate the page into more than 50 languages) to have that integrated into your own website,today we will see how with example



This tool is available from quite sometimes now,but the point is very less of the people from developer community are aware of this,so the reason behind this post is to show how any developer can make use of it and make it so simple to translate their pages...


The process...


The only need to have the power of translation on your website is copy and paste snippet of following code into your web page

<div id="google_translate_element">
</div>
<script>
function googleTranslateElementInit() {
new google.translate.TranslateElement({
pageLanguage: 'en'
}, 'google_translate_element');
}
</script>
<script src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit">
</script>

Just put above snippet in your HTML mark up and run the page,you will get standard google translator logo as well as few options which we are interested in right now,see the image below




now you have the full control over language change,just select the language from available languages and see how google translate it for you

What if i do not want to translate some of the content???
Now question comes is what if there are certain portion which you do not want to translate and you want to keep it as it is,so that fix is also there,say there is copyright text or email address which you want to keep as it is,so you just have to add one CSS class to it and gogle will take care of it like following

Contact us at <span class="notranslate">daivagnas@gmail.com</span>

Now if you do not want to translate whole page so just add following

<meta name="google" value="notranslate"></meta>

I was quite amazed with the power which google provides,i hope you also do...i hope this post was useful


To see live demo just have a look at the gadget on this page at top-right-most corner
Delete duplicate records from table even when there is no key field

August 13, 2010 ·

Delete duplicate records from table even when there is no key field

Hi all,yesterday only i was discussing with my colleague Kamlesh Samnani who is MCTS about deleting records which does not have any primary key field based on which we can delete the data (actually he only fired this question yesterday to me)

so i thought to write a blog post about it,there are many posts which talk about deleting duplicate records from the table which has some key field,so i started working on the query and what i got is what i am gonna write here.

Lets start creating the table and after inserting some data in it,we will fire our query in that and will check the output as well

CREATE TABLE [dbo].[Employee](
[EmployeeId] [int] NULL,
[Salary] [money] NULL
) ON [PRIMARY]

INSERT INTO Employee VALUES(1,1000)
INSERT INTO Employee VALUES(1,2000)
INSERT INTO Employee VALUES(1,3000)
INSERT INTO Employee VALUES(2,2000)
INSERT INTO Employee VALUES(3,3000)
INSERT INTO Employee VALUES(3,4000)
INSERT INTO Employee VALUES(4,4000)
INSERT INTO Employee VALUES(4,5000)


after creating table and inserting some data table will look like following



Now we will try solving the problem using two method,first one is using simple query which is quite interesting (It was new for me when i created this query and performed) and second approach is using CTE (Common Table Expression)

1) Using Simple Query with Row_Number()

DELETE temp FROM
  (
      SELECT id FROM
      (
        SELECT row_number() over (PARTITION BY EmployeeId order by EmployeeId) AS   
        id, EmployeeId,Salary 
        FROM Employee
      ) AS t WHERE id > 1
   ) temp
   SELECT * FROM Employee

Here what row_number() will do is will create numbers for each of the row,now we have PARTITION BY EmployeeId so it will reset the number when EmployeeId changes,so on every new EmployeeId there will be number generated from 1,so we can directly delete data which are > 1,because they are duplicate,now in case if we do not have any duplicate record this row_number() will generated only once and it will never be reset,so in that case no records would be having same number generated

2) Using CTE

;WITH temp (uniquid,id,salary) AS 
 (
    SELECT row_number() OVER (PARTITION BY EmployeeId order by EmployeeId) AS id, 
    EmployeeId,Salary 
    FROM Employee
 )
 DELETE FROM temp WHERE uniquid>1
 SELECT * FROM Employee

Output




Both of the query will produce the desire output and will delete the duplicate records

I hope this is interesting one right,honestly i was not knowing until i performed it my self yesterday,so you can also hands on...

August 11, 2010 ·

Roll back truncate command

How many times it has happened that somebody asks u a difference of Truncate and Delete,Atleast i am the person who used to say the very first point is that "TRUNCATE CAN NOT BE ROLLED BACK" untill i came across the blog post of Pinal Dave

So,the best way to understand any point is start with sample,here what we will do is we will create one table and we will create one transaction and under which we will be doing our truncate thing...and finally we will observe the result

Lets us start it by creating sample table and our transaction like following as shown below


CREATE TABLE temp (Name varchar(50))
INSERT INTO temp SELECT 'Moe'
INSERT INTO temp SELECT 'Larry'
INSERT INTO temp SELECT 'Curley'


BEGIN TRAN
   SELECT * FROM temp
   TRUNCATE TABLE temp
   SELECT * FROM temp
ROLLBACK TRAN
   SELECT * FROM temp
   
DROP TABLE temp


Now if you just copy and paste this above in your query editor and hit F5 (RUN),you would be surprise to see that even if you have performed TRUNCATE operation on your table,your data are still available at the end of transaction if we ROLLBACK

I was also got the feeling of learning something new with this helpful post by Pinal,which inspired me to write this post,so that we can use it for further reference

i hope this post is larning for you people as well

comments are welcomed...:-D