<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Manoj Gayakwad</title>
    <description>The latest articles on DEV Community by Manoj Gayakwad (@manoj_gayakwad_4291cfbcd5).</description>
    <link>https://dev.to/manoj_gayakwad_4291cfbcd5</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1559394%2Fe896413d-1b5e-4159-9132-5f53b0a11e9f.jpg</url>
      <title>DEV Community: Manoj Gayakwad</title>
      <link>https://dev.to/manoj_gayakwad_4291cfbcd5</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/manoj_gayakwad_4291cfbcd5"/>
    <language>en</language>
    <item>
      <title>13 Basic Terms In SQL That Basically Ask in Interview.</title>
      <dc:creator>Manoj Gayakwad</dc:creator>
      <pubDate>Fri, 24 Jan 2025 10:34:15 +0000</pubDate>
      <link>https://dev.to/manoj_gayakwad_4291cfbcd5/13-basic-terms-in-sql-that-basically-ask-in-interview-18k8</link>
      <guid>https://dev.to/manoj_gayakwad_4291cfbcd5/13-basic-terms-in-sql-that-basically-ask-in-interview-18k8</guid>
      <description>&lt;p&gt;&lt;strong&gt;1. Table&lt;/strong&gt;&lt;br&gt;
A table is a collection of related data organized into rows and columns. It’s like a spreadsheet where each row represents a data entry (record), and each column represents a field (attribute) of that record.&lt;br&gt;
Example: A table of Employees might have columns like EmployeeID, Name, Age, Department, etc.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;2.Row *&lt;/em&gt;(also called a Record or Tuple)&lt;br&gt;
A row represents a single, unique record in a table. Each row contains values for each of the table's columns.&lt;br&gt;
Example: A row in an Employees table might contain the values 1, John Doe, 28, Marketing in the respective columns for EmployeeID, Name, Age, and Department.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Column&lt;/strong&gt; (also called a Field or Attribute)&lt;br&gt;
A column is a vertical set of data values in a table. Each column is dedicated to a specific type of data, such as EmployeeID, Name, Age, Salary, etc.&lt;br&gt;
Example: The Name column in a Students table might contain values like Alice, Bob, Charlie.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Primary Key&lt;/strong&gt;&lt;br&gt;
A primary key is a unique identifier for each row in a table. It ensures that no two rows have the same value in this column. The primary key cannot contain NULL values.&lt;br&gt;
Example: In a Users table, the UserID might be the primary key, ensuring that each user has a unique ID.&lt;br&gt;
Key Characteristics:&lt;br&gt;
Uniqueness: No two rows can have the same primary key value.&lt;br&gt;
Not NULL: Every row must have a value in the primary key column.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. Foreign Key&lt;/strong&gt;&lt;br&gt;
A foreign key is a column (or a set of columns) in one table that links to the primary key of another table. It establishes a relationship between the two tables.&lt;br&gt;
Example: In an Orders table, the CustomerID column might be a foreign key that refers to the CustomerID primary key in a Customers table. This shows which customer placed each order.&lt;/p&gt;

&lt;p&gt;Key Characteristics:&lt;br&gt;
It creates a relationship between two tables.&lt;br&gt;
A foreign key in the child table corresponds to a primary key in the parent table.&lt;br&gt;
A foreign key can have NULL values, unlike a primary key.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6. Index&lt;/strong&gt;&lt;br&gt;
An index is a database object that improves the speed of data retrieval operations on a table. It’s like a table of contents for a book—it allows quick access to rows based on the values in one or more columns.&lt;br&gt;
Example: You might create an index on the Email column of a Users table so that queries that search by email are faster.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;7. NULL&lt;/strong&gt;&lt;br&gt;
NULL is a special marker used in databases to represent missing or undefined data. It’s different from an empty string or zero.&lt;br&gt;
Example: If an employee doesn’t have a phone number, the PhoneNumber column for that employee’s row might contain NULL.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;8. Relationship&lt;/strong&gt;&lt;br&gt;
A relationship is a connection between two tables. Relationships are established using foreign keys and can be:&lt;br&gt;
&lt;strong&gt;One-to-One:&lt;/strong&gt; One record in the first table is related to one record in the second table.&lt;br&gt;
&lt;strong&gt;One-to-Many:&lt;/strong&gt; One record in the first table can be related to many records in the second table.&lt;br&gt;
&lt;strong&gt;Many-to-Many:&lt;/strong&gt; Many records in the first table can be related to many records in the second table. This is typically implemented using a junction table.&lt;/p&gt;

&lt;p&gt;Example: In an Employee table and a Departments table, an employee can belong to one department, but a department can have many employees—this is a one-to-many relationship.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;9. Schema&lt;/strong&gt;&lt;br&gt;
A schema is the structure that defines the organization of data in a database. It includes tables, relationships, views, indexes, and other database objects. The schema defines how data is organized and how relationships between data are handled.&lt;br&gt;
Example: A schema for a school database might include tables like Students, Courses, and Enrollments with relationships between them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;10. View&lt;/strong&gt;&lt;br&gt;
A view is a virtual table that provides a way to look at data from one or more tables. It’s a stored query that can be treated like a table. Views do not store data themselves but display data from the underlying tables.&lt;br&gt;
Example: A view could display a list of employees with their department names by joining the Employees table and the Departments table.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;11. Constraint&lt;/strong&gt;&lt;br&gt;
A constraint is a rule applied to a column or table to ensure data integrity. Common constraints include:&lt;br&gt;
NOT NULL: Ensures a column cannot have NULL values.&lt;br&gt;
UNIQUE: Ensures all values in a column are unique.&lt;br&gt;
CHECK: Ensures that values in a column meet a specified condition.&lt;br&gt;
DEFAULT: Sets a default value for a column when no value is provided.&lt;br&gt;
FOREIGN KEY: Ensures that a column’s value matches a primary key in another table.&lt;br&gt;
Example: A constraint could ensure that the Age column only allows values greater than 18.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;12. Join&lt;/strong&gt;&lt;br&gt;
A join is an SQL operation used to combine rows from two or more tables based on a related column. Common types of joins include:&lt;br&gt;
INNER JOIN: Returns records that have matching values in both tables.&lt;br&gt;
LEFT JOIN (or LEFT OUTER JOIN): Returns all records from the left table and the matched records from the right table.&lt;br&gt;
RIGHT JOIN (or RIGHT OUTER JOIN): Returns all records from the right table and the matched records from the left table.&lt;br&gt;
FULL JOIN (or FULL OUTER JOIN): Returns records when there is a match in either table.&lt;br&gt;
Example: If you have a Customers table and an Orders table, you can use a join to get all orders for a specific customer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;13. Transaction&lt;/strong&gt;&lt;br&gt;
A transaction is a unit of work that is performed in a database. Transactions ensure that database operations are completed in a reliable and consistent way, following the ACID properties (Atomicity, Consistency, Isolation, Durability).&lt;br&gt;
Example: In a banking system, transferring money from one account to another involves multiple steps, and a transaction ensures that all steps either complete successfully or none at all (i.e., rollback if there's an error).&lt;/p&gt;

</description>
      <category>sql</category>
      <category>interview</category>
      <category>database</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Some of the best free OTP (One-Time Password) tools and APIs</title>
      <dc:creator>Manoj Gayakwad</dc:creator>
      <pubDate>Thu, 01 Aug 2024 08:01:28 +0000</pubDate>
      <link>https://dev.to/manoj_gayakwad_4291cfbcd5/some-of-the-best-free-otp-one-time-password-tools-and-apis-2iln</link>
      <guid>https://dev.to/manoj_gayakwad_4291cfbcd5/some-of-the-best-free-otp-one-time-password-tools-and-apis-2iln</guid>
      <description>&lt;p&gt;1.Twilio: Twilio offers a free tier that includes some free OTP &lt;br&gt;
messages each month. It's a popular choice due to its &lt;br&gt;
extensive documentation and support for multiple programming &lt;br&gt;
languages.&lt;br&gt;
        - &lt;a href="https://www.twilio.com/otp" rel="noopener noreferrer"&gt;Twilio Pricing&lt;/a&gt;&lt;br&gt;
        - &lt;a href="https://www.twilio.com/docs/verify" rel="noopener noreferrer"&gt;Twilio Documentation&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;MessageBird: MessageBird also provides a free tier with some free credits to start with. It's known for its ease of use and reliable service.

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.messagebird.com/en/otp/" rel="noopener noreferrer"&gt;MessageBird Pricing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://developers.messagebird.com/" rel="noopener noreferrer"&gt;MessageBird Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Authy: Authy, a service by Twilio, offers a comprehensive OTP solution with a free tier for developers.

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.twilio.com/authy" rel="noopener noreferrer"&gt;Authy Pricing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.twilio.com/docs/authy" rel="noopener noreferrer"&gt;Authy Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Firebase Authentication: Firebase by Google provides a free tier that includes phone authentication via OTP.

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://firebase.google.com/pricing" rel="noopener noreferrer"&gt;Firebase Pricing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://firebase.google.com/docs/auth/web/phone-auth" rel="noopener noreferrer"&gt;Firebase Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Vonage (formerly Nexmo): Vonage offers a free tier that includes some free credits to get started with OTP services.

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.vonage.com/communications-apis/pricing/" rel="noopener noreferrer"&gt;Vonage Pricing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://developer.vonage.com/verify" rel="noopener noreferrer"&gt;Vonage Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Sendinblue: Sendinblue provides a free tier with a limited number of OTP messages. It's a good option for small-scale projects.

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.sendinblue.com/pricing/" rel="noopener noreferrer"&gt;Sendinblue Pricing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://help.sendinblue.com/hc/en-us/articles/209463805-Sendinblue-SMTP-API" rel="noopener noreferrer"&gt;Sendinblue Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;OTPlib: OTPlib is a Python library that can generate OTPs, but you will need an SMS gateway to send the OTPs to users.

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/dlenski/python-otplib" rel="noopener noreferrer"&gt;OTPlib GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://python-otplib.readthedocs.io/en/latest/" rel="noopener noreferrer"&gt;OTPlib Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;When choosing an OTP tool or API, consider factors such as the number of free messages, ease of integration, and support for your development platform.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>react</category>
      <category>api</category>
    </item>
    <item>
      <title>One of the best free one-time password (OTP) sender APIs</title>
      <dc:creator>Manoj Gayakwad</dc:creator>
      <pubDate>Thu, 01 Aug 2024 07:19:33 +0000</pubDate>
      <link>https://dev.to/manoj_gayakwad_4291cfbcd5/one-of-the-best-free-one-time-password-otp-sender-apis-29ih</link>
      <guid>https://dev.to/manoj_gayakwad_4291cfbcd5/one-of-the-best-free-one-time-password-otp-sender-apis-29ih</guid>
      <description>&lt;h2&gt;
  
  
  One of the best free one-time password (OTP) sender APIs is provided by Twilio. Twilio offers a free tier that allows you to send a limited number of OTPs per month. You can sign up for a free account to get started.
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Twilio Free OTP API&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Website: &lt;a href="https://www.twilio.com/" rel="noopener noreferrer"&gt;Twilio&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Features: Secure delivery of OTPs, supports SMS, voice, and email channels, highly reliable.&lt;/li&gt;
&lt;li&gt;Free Tier: Includes a limited number of free OTPs per month.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To use Twilio's OTP API, you need to:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Sign up for a free Twilio account.&lt;/li&gt;
&lt;li&gt;Verify your phone number.&lt;/li&gt;
&lt;li&gt;Get your Account SID and Auth Token.&lt;/li&gt;
&lt;li&gt;Use Twilio's API to send OTPs.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Example code snippet to send an OTP using Twilio (Python):&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
python
from twilio.rest import Client

# Your Account SID and Auth Token from twilio.com/console
account_sid = 'your_account_sid'
auth_token = 'your_auth_token'
client = Client(account_sid, auth_token)

message = client.messages.create(
    body='Your OTP code is 123456',
    from_='+1234567890',
    to='+0987654321'
)

print(message.sid)  


Note: Remember to replace 'your_account_sid', 'your_auth_token', '+1234567890', and '+0987654321' with your actual Twilio account SID, Auth Token, Twilio phone number, and recipient phone number respectively.       
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>programming</category>
      <category>api</category>
    </item>
  </channel>
</rss>
