How to delete chat history of a particular user/contact in Skype [Solved]

Skype, one of the most used VOIP client software for communication inside organizations. One problem with this software is that: by default you can’t remove chat history for a specific contact. To delete chat history of a particular user/contact in your Skype, you have to use a DB browser software( sqlitebrowser ) to read the local DB files and make the changes. Follow the steps below to remove any history for a specific user from your system.

Note:
This removes the history form your local system; not from the other side of the Skype contact. So, he/she can see those from his/her computer.

Caution:
Take backup of main.db file before implementing anything from these steps.

Steps:

  • Download the DB Browser( SQLite Browser ). Its free and open source.
    You can get it from here: http://sourceforge.net/projects/sqlitebrowser/
  • Signout and Quit your Skype.
  • Go to the directory below and take a backup of the file main.db file. Just copy the directory itself or the file and keep it somewhere else for safety.

    Replace ‘skype_username’ with your skype user name in the above path.
  • Extract and run the sqlitebrowser software and open the Skype DB file(main.db) located here:
    C:Users’windows_username’AppDataRoamingSkype’skype_username’main.db
    Replace ‘skype_username’ with your skype user name in the above path.
  • — Click on the browse data tab. Here you can have all the tables that are being used to store history data in Skype.
    — Search the records by the particular user and delete those records. Mainly the chat related records reside inside ‘Chats’, ‘Messages. table.
    — Go to Browse data tab -> select table Messages -> click on find icon ->
    select author -> contains -> skype profile name of user you are searching for ->
    click on one of the last results in the list and you will see the row.
    — Select the records and click on ‘Delete Record’ button.
  • At last don’t forget to click on the save changes icon.

Open Skype and see the changes… Enjoy πŸ™‚

sqlitebrowser[ Download sqlitebrowser: http://sourceforge.net/projects/sqlitebrowser/ ]

main_db_path

Update: There is one free & open source software available for achieving all of the above manual trick. Skyperious: Skyperious is a Skype database viewer and merger, written in Python. You can open local Skype SQLite databases and look at their contents:

  • search across all messages and contacts
  • browse chat history and export as HTML, see chat statistics
  • import contacts from a CSV file to your Skype contacts
  • view any database table and and export their data
  • change, add or delete data in any table
  • execute direct SQL queries

Refreshing new look of php.net

PHP.NET website has got a new refreshing look. Yes, with the recent launch of PHP 5.5.0 they have changed to the new layout for php.net It looks awesome !!

For the time-being, a new banner has been added to the top of the php.net website introducing everyone to the new theme. Go and have a look.. The new look of php.net is really nice πŸ™‚

php net new theme

SQL query to get post and its meta_values as one row of record (single data grid)

EAV to Single row of Record with Separte Column

How to query EAV attributes into separate columns ? Here is the SQL query to get post and its meta_values as one row of record (single data grid). πŸ™‚ πŸ™‚ WordPress stores the post data mainly in two tables (i.e. wp_posts and wp_postmeta). The first table stores the data which are common and apply to all the individual entities( like the entities of type post, page, media, attachment, custom post type etc..) Second table stores the attributes of those entities as key-value pair. So this is kind of following EAV model. For those who doesn’t know about EAV, it stands for Entity Attribute & Value. Generally when we are not following EAV style, we store the entity and its attributes as separate columns in one table, but in EAV each attribute is stored as rows. Usually it is done for a purpose: to allow columns to be added without having to make DDL changes . 6NF and EAV as principles and concepts offer substantial benefits, and performance increases.

But on certain scenarios we want the attributes stored as rows to be fetched and displayed as columns in single data grid. This is the most tedious part to select the data from two different tables and showing as single row of entity. However we can fetch and display the data by writing query somewhat like the following.SQL query to get post and its meta_values as one row of record.

This will display the posts which is having at least one of the above meta_keys set in the post_meta table. To display all the posts including those which doesn’t have any meta values in the post_meta tables.

EAV to Single row of Record with Separte Column

EAV to Single row of Record with Separte Column

[Solved] latin1_swedish_ci collation by default in PhpMyadmin to “utf8_general_ci”

After upgrading to PhpMyAdmin version: 3.4.5 (which comes in XAMPP 1.7.7-VC9), I noticed that the default collation of MySql is set to “latin1_swedish_ci”.Due to this, whenever a new database is created using phpMyAdmin, it sets the collation as latin1_swedish_ci by default(there will be no problem due this though). We can change this to “utf8_general_ci” / “utf8_unicode_ci” by selecting the needed one before creating the database. If we forgot to select the right one, then it will make the collation as “latin1_swedish_ci”. πŸ™

Change the default collation to utf8_general_ci in MySql:

  • Open the my.ini file. (C:xamppmysqlbinmy.ini)
  • Find the text [mysqld] and add the below lines.

    The above two lines will select a character set and collation at server startup. These settings apply server-wide and apply as the defaults for databases created by any application, and for tables created in those databases.
  • Save the file and restart the mysql server.(XAMPP Control Panel -> Stop -> Start)


For more info read: Configuring the Character Set and Collation for Applications